1. 程式人生 > >8.3 確定兩個日期之間的工作日數目

8.3 確定兩個日期之間的工作日數目

one int form cas date_add ediff mat interval bsp

問題:給定兩個日期,求它們之間(包括這兩個日期本身)有多少個”工作“日。
select sum(case
when date_format(
date_add(jones_hd,interval t500.id - 1, ‘DY‘),‘%a‘)
in (‘SAT‘, ‘SUN‘)
then 0 else 1
end) as days
from (select max(case
when ename = ‘BLAKE‘ then
hiredate
end) as blake_hd,
max(case
when ename = ‘JONES‘ then
hiredate
end) as jones_hd
from emp
where ename in (‘BLAKE‘, ‘JONES‘)) x,
t500
where t500.id <= datediff(blake_hd, jones_hd) + 1 ;

8.3 確定兩個日期之間的工作日數目