首先,这个考勤系统已经做好的了!无法修改!
table:
姓名 打卡时间
甲 2008-7-27 8:00
乙 2008-7-27 9:00
甲 2008-7-28 8:15
丙 2008-7-28 8:23
。。
并不是每个人每天都打卡的。。
要的统计效果:可以选择统计的时间段:比如是2008-7-1到2008-7-20
时间 星期 甲 乙 丙
2008-7-1 星期二 8:01 8:12 9:01 。
2008-7-2 星期三 无打卡 8:15 无打卡。
。。
以此类推,没有打卡的也列出来
这样的sql语句应该怎么写??gridview应该怎么列出来??谢谢!
table:
姓名 打卡时间
甲 2008-7-27 8:00
乙 2008-7-27 9:00
甲 2008-7-28 8:15
丙 2008-7-28 8:23
。。
并不是每个人每天都打卡的。。
要的统计效果:可以选择统计的时间段:比如是2008-7-1到2008-7-20
时间 星期 甲 乙 丙
2008-7-1 星期二 8:01 8:12 9:01 。
2008-7-2 星期三 无打卡 8:15 无打卡。
。。
以此类推,没有打卡的也列出来
这样的sql语句应该怎么写??gridview应该怎么列出来??谢谢!
解决方案 »
- 关于datagridview
- 像腾讯这样的大型门户网站首页的数据是如何检索的
- 刷新问题,我做的页面有新数据,但点刷新没用,要关掉IE重新打开才显示新数据!为什么?
- 求一正则表达式部份替换方法
- HyperLinkField 该怎么不让他有下划线呀
- - - - -在 ascx 中 使用 javascript Callbacks 好象有问题?
- [求助]ASP.NET正则如何区配网页中跨多行的数据呀?
- 求教,如何用JavaScript响应嵌在aspx页面的WinForm控件所触发的事件?
- 如何像CSDN左边一样,按同步按纽时,刷新目录树?
- 如何判断一个字符串是否是短日期型。。。
- 关于session丢失问题 在线等
- 中小心企业计算机配置调查
select time, name from table group by time
给你一个例子
http://publish.it168.com/2005/1105/20051105001501.shtml?cChanNel=11&cpositioncode=296&hezuo=29
使用case语句
--一周内的统计
declare @startTime dateTime
declare @endTime dateTime
set @startTime=REPLACE(CONVERT(varchar(10),DateAdd(day,-7,DATEADD(Day,2-DATEPART(Weekday,getdate()),getdate())),120),N'-0','-')
set @endTime=REPLACE(CONVERT(varchar(10),DateAdd(day,-1,DATEADD(Day,2-DATEPART(Weekday,getdate()),getdate())),120),N'-0','-')
declare @temp table(XX XX....)
while(@startTime<=@endTime)
begin
insert into @temp
select ...
end
看这个http://tech.it168.com/db/s/2006-07-31/200607311324786.shtml