![](/img/trans.png)
[英]MySQL SELECT from table where row = (SELECT val1, val2, val3, … etc.)
[英]Mysql sort by two columns, Val1=x, Val2
我在寻找按两列排序的SQL脚本,其中order = pay和clientID按ID
应显示所有记录,第一行应为“ pay”,并按ID重置
select *
from clients
order by order = 'pay', clientID
在MySQL中,布尔表达式在数字上下文中被视为整数-其中0表示false,1表示true。 因此,如果您按升序排序,则首先显示false。
您只需要desc
:
select *
from clients
order by (order = 'pay') desc, clientID;
注意: order
是列的非常不好的名字,因为它是SQL语言中的保留字和关键字。 您应该给它起别的名字。 否则,您在输入名称时必须转义该名称-这只是浪费精力,而且使得读取查询有点困难。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.