mysql怎么获取一个月里面有几个星期一哈?

mysql怎么获取一个月里面有几个星期一哈?

yikefu 发布于 2022-3-7 16:42
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
CD20160914Lv8专家互助
发布于2022-3-7 16:47(编辑于 2022-3-7 16:56)

select sum(case when date_format(t.day,'%w') =1 then 1 else 0 end ) as 星期一个数 from (

select date_add('2022-01-01', interval (cast(help_topic_id as signed integer)) day) day

from mysql.help_topic

where help_topic_id < datediff('2022-01-31', '2022-01-01') + 1

order by help_topic_id) t

----------另一种写法------------

select sum(case when dayofweek(t.day)-1 =1 then 1 else 0 end ) as 星期一个数 from (

select date_add('2022-01-01', interval (cast(help_topic_id as signed integer)) day) day

from mysql.help_topic

where help_topic_id < datediff('2022-01-31', '2022-01-01') + 1

order by help_topic_id) t

image.png

最佳回答
0
用户W4933403Lv5初级互助
发布于2022-3-7 17:15

set @ym ='2022-03';

select DAY(LAST_DAY(concat(@ym,'-01'))) div 7 + 

(DAY(LAST_DAY(concat(@ym,'-01'))) % 7 + (case (DAYOFWEEK(concat(@ym,'-01'))-1) when 0 then 7 else (DAYOFWEEK(concat(@ym,'-01'))-1) end) ) div 7

  • 4关注人数
  • 354浏览人数
  • 最后回答于:2022-3-7 17:15
    请选择关闭问题的原因
    确定 取消
    返回顶部