您将如何从Mysql数据库中对字符串进行排序,该数据库具有以下格式:
W/YYYY
例:
1/2020
1/2020
2/2020
3/2020
4/2020
4/2020
10/2020
11/2020
11/2020
30/2020
31/2020
我想按最近一周编号对各个日期进行排序。现在,我正在使用此SQL命令来获取各个日期:
SELECT DISTINCT `week` FROM `mytable`;
在SQL或PHP中可以获得这样的输出吗?
31/2020
30/2020
11/2020
10/2020
4/2020
3/2020
2/2020
1/2020
使用字符串函数。 对于降序排序:
order by right(week, 4) desc,
substring_index(week, '/', 1) + 0 desc
另一种方法不会转换为数字:
order by right(week, 4) desc,
length(week) desc,
week desc