如一个家伙从某年5.1(字段:开始日期)-7.31(字段:结束日期)出了92天(字段天数)差.我在每个月的报表中, 比如6份的报表中, 怎么在统计其出差天数?如:姓名  开始日期  结束日期  天数
---------------------------------------
胡二  2007-5-1  2007-7-31  92
张三  2007-6-2  2007-6-3    2
李四  2007-6-10 2007-7-10  31怎么统计各个人第m年n月份的出差天数? 
比如07年6月份
胡二:30天
张三: 2天
李四:21天

解决方案 »

  1.   

    用dimff函数可以计算时间差的,函数名称不知道写没写对。在SQL用这么一个计算时间差的函数
      

  2.   

    select 姓名,开始日期,开始日期,datediff(d,开始日期,开始日期) '天数' from 表第2个要用case when,datepart拼接比较,语句可能复杂点,现在没开isqlw,不写了
      

  3.   

    用convert(varchar(6),日期,112),不用datepart
      

  4.   

    周末不管吧,周末出差也是算money滴
      

  5.   

    datadiff(dd,data1,data2); 这就是天数
      

  6.   

    create table Onbusiness(pname nvarchar(50),dateStart smalldateTime,dateEnd smalldatetime,dateCount int)
    insert into  Onbusiness values('胡二','5/1/2007','7/31/2007',92)
    insert into Onbusiness values('张三','2007-6-2','2007-6-3',2)
    insert into Onbusiness values('李四','2007-6-10','2007-7-10',31)
      

  7.   

    select pname,(datediff(day,dateStart,dateEnd)+1) as OnbusinessDay from Onbusiness where pname='胡二'