MySQL中的WEEKDAY函數是用于獲取指定日期是星期幾的函數,其返回值從0開始,也就是周日是0,周一是1,以此類推。
SELECT WEEKDAY('2022-08-08'); # 返回結果為1,即周一
如果需要返回星期幾的英文名稱,可以結合CASE語句使用。
SELECT CASE WEEKDAY('2022-08-08') WHEN 0 THEN 'Sunday' WHEN 1 THEN 'Monday' WHEN 2 THEN 'Tuesday' WHEN 3 THEN 'Wednesday' WHEN 4 THEN 'Thursday' WHEN 5 THEN 'Friday' ELSE 'Saturday' END; # 返回結果為Monday
在實際應用中,WEEKDAY函數可以用于統計某一時間段內每個星期幾發生了多少次事件。
SELECT WEEKDAY(date), COUNT(*) FROM myTable WHERE date BETWEEN '2022-08-01' and '2022-08-31' GROUP BY WEEKDAY(date);
上述語句可以統計2022年8月份中每個星期幾發生了多少次事件。