可以使用SQL按日期排序,但是把空日期放在结果集后面吗?
技术问答
448 人阅读
|
0 人回复
|
2023-09-14
|
我在MySQL数据库中有一堆任务,其中一个是截止日期。并非所有任务都必须在截止日期前完成。
& Y2 P3 k6 E; `% M我想使用SQL根据截止日期对任务进行排序,但没有截止日期的任务集中在结果上。现在,首先显示空日期,然后根据最早到最晚的截止日期对其他日期进行排序。9 H( n' |: i2 W1 c [
关于如何单独使用SQL任何关于这个操作的想法?(如有必要,我可以用PHP这样做,但只用SQL解决方案会很棒。
, f0 [7 p3 H7 x# \1 W4 x0 T3 g谢谢!
3 Y9 n8 C% {/ }
5 s. l9 ~* O+ z8 \7 h w# X) z 解决方案:
+ a: O% }) z G# M8 W* y 这使用标准SQL而不使用ISNULL()解决方案。该功能不是标准的SQL,可能不适用于其他品牌RDBMS。
/ |: O5 l: _# [/ y, w! zSELECT * FROM myTableWHERE ...ORDER BY CASE WHEN myDate IS NULL THEN 1 ELSE 0 END,myDate; |
|
|
|
|
|