我有这些列的表:id,status,text。
我的SQL查询:SELECT * FROM table ORDER BY id AND status DESC
我需要从表中获取所有行,并按ID和按状态降序对其进行排序。
结果是:
id | status
1 | 1
2 | 0
3 | 0
结果应该是这样的:
id | status
1 | 1
3 | 0
2 | 0
提前致谢。
答案 0 :(得分:1)
您必须对两个列使用DESC,您可以尝试按以下方式排序:
SELECT * FROM table ORDER BY id DESC,status DESC
答案 1 :(得分:1)
and
中不使用order by
(通常)。要获得所需的结果,您需要先按status
订购,然后按id
订购
SELECT *
FROM table
ORDER BY status DESC, id DESC;
请注意,desc
需要两次,因为它仅适用于一个排序键。
答案 2 :(得分:0)
首先添加“order by”,然后按顺序按asc / desc顺序添加所有列:
SELECT * FROM table ORDER BY status DESC, id desc
答案 3 :(得分:0)
如果status
列优先,则应为
SELECT * FROM table ORDER BY status DESC, id DESC;