MySQL中按照多字段排序及问题解决_MySQL

WBOY
풀어 주다: 2016-06-01 13:04:39
원래의
872명이 탐색했습니다.

因为在做一个项目需要筛选掉一部分产品列表中的产品,使其在列表显示时排在最后,但是所有产品都要按照更新时间排序。

研究了一下系统的数据库结构后,决定将要排除到后面的产品加为粗体,这样在数据库中的“ifbold”就会被标记为1,而其他产品就默认标记为0,然后就打算使用MySQL在Order By时进行多字段排序。

Order by的多条件分割一般使用英文逗号分割,所以我测试的SQL如下:

代码如下:


select * from {P}_product_con where $scl order by 'ifbold' asc,$myord desc limit $pagelimit"

但是运行后没有将”ifbold“正序,但是单纯正序”ifbold“却正常,调试了N久,无意中在phpMyAdmin中运行却发现正常,仔细比对后发现问题原来是来自于”ifblod“的引号上。改为下列语句就正常了:

代码如下:


select * from {P}_product_con where $scl order by `ifbold` asc,$myord desc limit $pagelimit

所以以后大家再程序中写SQL语句时也要注意引号的问题哦!

以上所述就是本文的全部内容了,希望大家能够喜欢。

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!