SELECT
(
floor( days / 7 )* 5 + days % 7 -
CASE
WHEN 6 BETWEEN wd
AND wd + days % 7-1 THEN
1 ELSE 0
END -
CASE
WHEN 7 BETWEEN wd
AND wd + days % 7-1 THEN
1 ELSE 0
END
) AS result
FROM
(select datediff(e,s)+1 as days, weekday(s)+1 as wd ) as a;
e为结束时间,s为开始时间,格式为
2018-09-02
转载Mysql 编程实战三之计算两个日期的工作日数_数据库_IT虾米网
侵删