SQL-按周一至周日的工作日对DATE_FORMAT进行排序

时间:2019-05-01 11:17:36

标签: mysql

我有一个查询,该查询获得了不同的工作日(日期上的data_format),我希望将其排序为星期一至星期日。直到现在是按字母顺序的工作日。

查询:

SELECT distinct DATE_FORMAT(cleaningdate, '%W') as contract_weekday 
FROM cleaning 
ORDER BY contract_weekday

帮助表示赞赏。谢谢。

2 个答案:

答案 0 :(得分:3)

您需要用数字来表示当天的日期,然后使用weekday()来获取它:

order by weekday(cleaningdate)

答案 1 :(得分:0)

尝试一下

SELECT DATE_FORMAT(cleaningdate, '%W') as contract_weekday 
FROM cleaning 
GROUP BY cleaningdate
ORDER BY DATE_FORMAT(cleaningdate, '%w')

我在这里添加了DATE_FORMAT(cleaningdate, '%w')

  

%W工作日名称(星期日..星期六)

     

%w是星期几