MySQL顺序为0然后最大

时间:2013-04-26 18:16:14

标签: mysql sorting mysqli

我正在尝试进行首先显示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从最大到最小的整数排序?

2 个答案:

答案 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