两个日期之间的工作日天数

两个给定的时间,计算在工作日(不包括周六日)的天数,包含给定时间的当天的,sql有专门的函数吗,有没有老哥提供下思路:collision:
如1.6到1.10都是工作日输出5,1.6到1.11包含一个周六也输出5。

讨论数量: 5

sql 应该是没有这个的, 可以看一下这个接口 www.alapi.cn/api/view/116

1年前 评论
Junwind

纯 sql 写很难,可以放到脚本语言中处理

1年前 评论

为嘛我看不到我之前发的两条回复了。。 :flushed: :scream:


写了个纯 SQL 的,不用联网查 API。你试试行不行:SQLite 官网支持在线运行)

SQLite 语法

SELECT
  ((end_day - 3) / 7) * 5 + MIN((end_day + 4) % 7, 5) -
  (((begin_day - 4) / 7) * 5 + MIN((begin_day + 3) % 7, 5))
FROM (
  SELECT
    unixepoch('2023-02-06') / 86400 begin_day,  -- 周一
    unixepoch('2023-02-11') / 86400 end_day)    -- 周六

结果

5
1年前 评论
lalalahuya (楼主) 1年前
lalalahuya (楼主) 1年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!