有一张表存开始时间结束时间(肯定不含节假日),然后比如结束时间-开始时间>三天就超期,但是考虑周末和节假日,然后就维护了一张码表,存节假日的时间
我理解的规则是
开始时间+1 去对比 码表 的时间如果码表有就+1对比直到没有,这个时间为开始时间,然后计算差值,看是否超期,怎么写呢我不会了
select
case when 结束时间-开始时间-(select count(1) from 节假日码表 where 节假日时间 between t.开始时间 and t.结束时间)>3 then '超期' else '不超期' end as flag
from 表 t