我有一张桌子,我想在下一个即将到来的生日(忽略年份)之前订购他们。我使用了此答案中描述的方法:
https://stackoverflow.com/a/20522025/2934340
或者
SQL代码:
SELECT *
FROM _table
ORDER BY SUBSTR(DATE('NOW'), 6)>SUBSTR(birthdate, 6), SUBSTR(birthdate, 6);
问题是我使用了另一种日期格式。在上面的答案中,日期格式为mm-dd,我想使用dd-mm。现在我的约会是这样的:
17-10-1974
03-10-1979
29-02-1980
20-10-1993
我希望它排序如下:
17-10-1974
20-10-1993
29-02-1980
03-10-1979 (Because we are at 10-10-2014/past this date)
我可以对我的代码进行哪些更改来实现此目的?
一种简单的存档方法是使用SUBSTR()函数切换月份和日期:
SELECT *
FROM _table
ORDER BY SUBSTR(DATE('NOW'), 6)>(SUBSTR(birthdate, 4, 3) || SUBSTR (birthdate, 1, 2)), (SUBSTR(birthdate, 4, 3) || SUBSTR (birthdate, 1, 2));
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句