对 W/YYYY 日期格式进行排序



您将如何从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

最新更新