标题:求助一个SQL语句
只看楼主
wfdszds
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2010-6-9
结帖率:0
已结贴  问题点数:10 回复次数:2 
求助一个SQL语句
asp出勤统计求助
数据库kkk.mdb
id   num    上午   下午   data
1   张三    内勤   内勤   2010-06-01
2   张三    内勤   会议   2010-06-02
3   张三    下乡   事假   2010-06-03
4   张三    会议   事假   2010-06-04
.......
如何取得2010-06-01至2010-06-30期间,张三内勤、下乡。。的天数?

比如统计2010-06-01至2010-06-04日
内勤的天数就是1.5天,事假1天,会议1天,下乡0.5天
搜索更多相关主题的帖子: SQL 语句 
2010-06-09 22:12
Atom_1
Rank: 2
等 级:论坛游民
帖 子:3
专家分:12
注 册:2010-6-10
得分:5 
假设你的这个表名为 出勤

select count(上午)
from 出勤
where 上午='内勤' and num='张三' and data between '2010-06-01' and '2010-06-30'

select count(下午)
from 出勤
where 下午='内勤' and num='张三' and data between '2010-06-01' and '2010-06-30'

得出的两个值取平均就是内勤的天数。  时间字段的条件不太确定是否正确~
2010-06-10 08:57
xiao1_2xiao
Rank: 1
等 级:新手上路
帖 子:5
专家分:5
注 册:2010-6-9
得分:5 
select sname,sum(天数),日期 from
(select sname,count(am)/2 天数,left(date,charindex('-',date)+2) 日期 from ttt
where am='内勤'
group by sname,left(date,charindex('-',date)+2)
union all
select sname,cast(cast(count(am) as decimal(18,1))/2 as decimal(18,1))  天数,left(date,charindex('-',date)+2) 日期 from ttt
where pm='内勤'
group by sname,left(date,charindex('-',date)+2)) t
group by sname,日期
2010-06-10 14:44



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-309798-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.502980 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved