-2
A
回答
1
您可以使用IF
语句来执行您的逻辑,然后将空值置于底部。在列名之前放置一个减号( - )以对空值进行分类。
测试用例:
CREATE TABLE mytable (a int);
INSERT INTO mytable VALUES (NULL);
INSERT INTO mytable VALUES (NULL);
INSERT INTO mytable VALUES (NULL);
INSERT INTO mytable VALUES (0);
INSERT INTO mytable VALUES (0);
INSERT INTO mytable VALUES (0);
INSERT INTO mytable VALUES (1);
INSERT INTO mytable VALUES (2);
INSERT INTO mytable VALUES (3);
INSERT INTO mytable VALUES (4);
INSERT INTO mytable VALUES (5);
结果
SELECT *, IF (a = 0 OR a = NULL, NULL, a) as sort_order
FROM mytable
ORDER BY -sort_order DESC
+------+
| a |
+------+
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
| 0 |
| 0 |
| 0 |
| NULL |
| NULL |
| NULL |
+------+
相关问题
- 1. 排序与字典顺序
- 2. 以数字顺序订购,然后在MySQL中按字母顺序排序
- 3. MySQL的,按字母顺序排序,出现异常
- 4. mysql与数字排序varchar
- 5. MySQL排序顺序 - 整理?
- 6. mysql排序顺序操作
- 7. 排序规则在MySQL
- 8. 在MYSQL中按字母顺序排列多行和排序
- 9. MySQL函数按字母顺序排序字符串
- 10. 按字母数字顺序对MySQL列进行排序
- 11. MySQL按字母顺序排列的顺序
- 12. 按大于0的排序顺序排序
- 13. 排序顺序与Hadoop MapRed
- 14. 按字母顺序排序,然后按字母顺序排列
- 15. 在MySQL中完全随意的排序顺序与PHP
- 16. 排序结构的数组按字母顺序与具有空间
- 17. MySQL中的排序规则
- 18. 定制与usort排序在PHP - 数值排序0在列表
- 19. 按字母顺序排序元素,然后按数字排序
- 20. 我按字母顺序排序而不是数字排序
- 21. 排序表的顺序不按字母顺序排列
- 22. mysql按字段顺序排列显示
- 23. 字典顺序排序C#
- 24. 按字母顺序排序
- 25. 排序按字母顺序
- 26. 按字母顺序排序
- 27. 按字母顺序排序
- 28. MySQL的排序依据一个数字,空字符串(或0)最后
- 29. perl - 按数字顺序降序排列,然后按字母顺序排列
- 30. Mysql的排序顺序很奇怪