MySQL语句中如何判断星期几:方法与实例详解
在MySQL中,判断日期对应的星期几可以通过内置函数 DAYOFWEEK()WEEKDAY() 轻松实现,这两个函数能够将日期转换为数字形式的星期表示,但需注意其返回值差异:DAYOFWEEK() 返回1(周日)到7(周六)的值,符合国际标准;而 WEEKDAY() 返回0(周一)到6(周日)的值,更符合工作日习惯,执行 SELECT DAYOFWEEK('2023-10-01') 会返回1(代表周日),而 SELECT WEEKDAY('2023-10-01') 则返回6(同样代表周日,但以周一为起始)。

若需直接获取星期的英文名称,可使用 DAYNAME() 函数,如 SELECT DAYNAME('2023-10-01') 将输出“Sunday”,在实际应用中,这些函数常用于数据统计、报表生成或业务逻辑处理,例如筛选特定星期几的记录:

mysql语句 判断星期几,判断星期几的MySQL语句

SELECT * FROM orders WHERE DAYOFWEEK(order_date) = 2; -- 获取所有周一的订单

结合 CASE 语句可自定义输出格式,例如将数字映射为中文星期:

SELECT 
    order_date,
    CASE DAYOFWEEK(order_date)
        WHEN 1 THEN '周日'
        WHEN 2 THEN '周一'
        -- ... 其他映射
    END AS week_cn
FROM orders;

掌握这些函数能显著提升日期数据处理的灵活性与效率,尤其适用于按周分析的场景。

未经允许不得转载! 作者:HTML前端知识网,转载或复制请以超链接形式并注明出处HTML前端知识网

原文地址:https://www.html4.cn/7215.html发布于:2026-07-27