比如出勤天数是7天,那就是1个星期六,显示为1
出勤天数为20天,那就是3个星期六,显示为3。用什么公式可以自动计算呢?
根据出勤天数,怎么计算星期六几天?
答案:2 悬赏:50 手机版
解决时间 2021-01-25 06:34
- 提问者网友:戎马万世
- 2021-01-24 22:09
最佳答案
- 五星知识达人网友:夜余生
- 2021-01-24 23:17
您的意思是否为每7天1个星期六,不足7天的如果达到6天就有一个星期六,5天或者5天以下的就视为没有星期六?
如果是这样,可以用if,mod和quotient嵌套来实现:
IF(MOD(出勤天数,7)<6,QUOTIENT(出勤天数,7),QUOTIENT(出勤天数,7)+1)
如果是这样,可以用if,mod和quotient嵌套来实现:
IF(MOD(出勤天数,7)<6,QUOTIENT(出勤天数,7),QUOTIENT(出勤天数,7)+1)
全部回答
- 1楼网友:往事隔山水
- 2021-01-25 00:14
--建议构建一个日历表,能够体现出工作日和非工作日,这样算的话更准;
--下面是简单剔除双休的sql方法
--mssql:
select a,
b,
count(case
when d in (1, 7) then
null
else
1
end)
from (select a, b, c, datepart(dw, dateadd(day, t1.number, a)) d
from (select a, b, datediff(day, a, b) as c
from (select '2012-01-01' as a, '2012-12-31' as b) t) t,
master .. spt_values t1
where t1.type = 'p'
and t1.number < c) t2
group by a, b;
--oracle:
select a,
b,
count(case
when d in (1, 7) then
null
else
1
end)
from (select a, b, a + level - 1 as c, to_char(a + level - 1, 'd') d
from (select to_date('2012-01-01', 'yyyy-mm-dd') a,
to_date('2012-12-31', 'yyyy-mm-dd') b
from dual)
connect by level <= b - a)
group by a, b
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯