前端之家收集整理的这篇文章主要介绍了
php – mysql:按列名排序结果,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
$qry="select * from table where category='car' or title='car' or description='car'";
但我希望输出首先按类别列出行,然后是标题,然后是描述.
****编辑:实际上我正在使用like运算符来搜索**
例:
id category title description
1 car
2 car
3 car
4 car
5 car
6 car
除了使用联盟之外还有什么方法吗?@H_404_19@提前致谢.
最佳答案
您可以使用ORDER BY和正确的键来完成此操作.在
MysqL中,您可以:
ORDER BY (category = 'car') DESC,(title = 'car') DESC,(description = 'car') DESC
MysqL将布尔表达式视为数字上下文中的整数,0表示false,1表示true.所以DESC将真正的版本放在第一位.
如果您愿意,还可以简化WHERE子句:
WHERE 'car' IN (category,title,description)