我正在尝试进行首先显示0
然后按最大数字显示的mysql排序。
我当前的mysql语句返回
10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 0, 0, 0
但我想得到这个
0, 0, 0, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1
是否有可能构建一个MySQL查询,从一开始就用0
从最大到最小的整数排序?
答案 0 :(得分:10)
试试这个order by
声明:
order by val = 0 desc, val desc
第一部分是一个布尔值,当值为1时评估为“1”,否则为0.第二部分按降序排列其余值。
答案 1 :(得分:2)
你必须使用2个过滤器
select * from mytable
order by mycolumn=0 desc, mycolumn desc