select
     day
    ,dayofweek(day)                                                                    as dw1
    ,date_add(day,1 - dayofweek(day))                                                  as Su_s -- 周日_start
    ,date_add(day,7 - dayofweek(day))                                                  as Sa_e -- 周六_end
    ,case when dayofweek(day) = 1 then 7 else dayofweek(day) - 1 end                   as dw2
    ,date_add(day,1 - case when dayofweek(day) = 1 then 7 else dayofweek(day) - 1 end) as Mo_s -- 周一_start
    ,date_add(day,7 - case when dayofweek(day) = 1 then 7 else dayofweek(day) - 1 end) as Su_e -- 周日_end
from (
    select '2021-05-20' as day
) t1

结果:

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐