mysql数据库,如何得到2个时间除周末以外的时间,并拿这个值做其他计算。

计算时间差之后,拿这个时间差做计算。

FineReport 重庆一棵草 发布于 2023-7-10 13:57
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
CD20160914Lv8专家互助
发布于2023-7-10 13:58(编辑于 2023-7-10 14:12)

你只要计算周末,不管中国的节假日?

select t.mydate from (

SELECT 

  DATE_FORMAT(

    DATE_ADD(

      CONCAT('2023-06-01'),

      INTERVAL (CAST(help_topic_id AS SIGNED)) DAY

    ),

    '%Y-%m-%d'

  ) myDATE,

   

  case when weekday(DATE_FORMAT(

    DATE_ADD(

      CONCAT('2023-06-01'),

      INTERVAL (CAST(help_topic_id AS SIGNED)) DAY

    ),

    '%Y-%m-%d'

  )) in(5,6) then 0 else 1 end as 是否需要/*返回为0的就是周末,不需要的*/

  

FROM

  mysql.help_topic 

WHERE help_topic_id < TIMESTAMPDIFF(

    DAY,

    CONCAT(

      STR_TO_DATE('2023-06-01', '%Y-%m-%d')

    ),

    CONCAT(

      STR_TO_DATE('2023-07-05', '%Y-%m-%d')

    )

  )

  ) t

  

  where 是否需要=1

image.png

  • 重庆一棵草 重庆一棵草(提问者) 不管。只需要排除周末
    2023-07-10 14:00 
  • CD20160914 CD20160914 回复 重庆一棵草(提问者) 那直接这样就行了。。用weekday函数SELECT CASE WHEN WEEKDAY(\'2021-10-10\') IN (5,6) THEN \'是周末\' ELSE \'不是周末\' END;
    2023-07-10 14:01 
  • 重庆一棵草 重庆一棵草(提问者) 回复 CD20160914 你这个是判断一个时间是周几的吧?
    2023-07-10 14:04 
  • CD20160914 CD20160914 回复 重庆一棵草(提问者) 对呀,它是5和6就是周末,否则不是周末。这不就可以返回所有对应你要的时间了吗,再套一个子查询
    2023-07-10 14:06 
  • CD20160914 CD20160914 回复 重庆一棵草(提问者) 把上面的日期,改成自己的开始与结束日期就可以了。
    2023-07-10 14:12 
  • 2关注人数
  • 284浏览人数
  • 最后回答于:2023-7-10 14:12
    请选择关闭问题的原因
    确定 取消
    返回顶部