我有一个员工计划表,该表存储轮班组和工作日日期。该表如下所示:
shift_group schedule_date
------------------------------
Shift 1 2014-11-22
Shift 1 2014-11-23
Shift 1 2014-11-24
Shift 1 2014-11-25
Shift 1 2014-11-26
Shift 1 2014-11-27
Shift 1 2014-11-28
Shift 1 2014-11-29
Shift 1 2014-11-30
Shift 2 2014-11-25
Shift 2 2014-11-26
Shift 2 2014-11-27
Shift 2 2014-11-28
Shift 2 2014-11-29
Shift 2 2014-11-30
Shift 1 2014-12-01
Shift 1 2014-12-02
Shift 1 2014-12-03
Shift 1 2014-12-04
Shift 1 2014-12-05
Shift 1 2014-12-06
Shift 1 2014-12-07
我发现的只是两个日期列之间的DATEDIFF
。有什么方法可以计算每个班次的天数?例如:
shift_group month number of days
------------------------------------
Shift 1 11 9
Shift 1 12 7
Shift 2 11 6
答案 0 :(得分:1)
我认为您正在尝试获取每月的轮班次数。
select shift_group , datepart(month, schedule_date), count(1) from table
group by shift_group , datepart(month, schedule_date)
order by shift_group