我遇到查询问题(mysql)。
我必须order by date ASC
问题是我在表格中也有空日期。 Mysql将它们设置为0000-00-00,所以当我按日期排序时,这些日期会先显示,但我需要把“空日期”放在最后,我该怎么办?
示例:
0000-00-00
2011-01-01
2010-12-12
查询:.... ORDER BY date ASC
结果应该是:
2010-12-12
2011-01-01
0000-00-00
由于
答案 0 :(得分:5)
ORDER BY IF(date = '0000-00-00', 1, 0) ASC, date ASC
答案 1 :(得分:0)
假设你正在做:
SELECT *
FROM table
ORDER BY date ASC
你可以做到
SELECT *, IF(date > 0, 1, 0) AS has_date
FROM table
ORDER BY has_date ASC, date ASC
我相信会为你做到这一点。