你好以下是一個示例數據。計數/組T-SQL
DateGroupID StartDate EndDate
1 2013-01-01 2013-01-07
2 2013-01-08 2013-01-14
3 2013-01-15 2013-01-21
.
.
.
15 2013-04-01 2013-04-07
EMPID GroupID JoinDate TerminationDate
1 A 2013-01-01 2013-03-24
2 B 2013-01-05 NULL
3 C 2013-01-05 NULL
4 A 2013-01-05 2013-03-20
5 B 2013-01-17 NULL
6 D 2013-02-01 NULL
7 A 2013-02-24 NULL
8 A 2013-02-28 NULL
9 B 2013-03-02 NULL
10 B 2013-03-12 NULL
11 C 2013-03-22 NULL
12 C 2013-03-22 NULL
13 D 2013-03-26 NULL
14 D 2013-03-29 NULL
15 A 2013-04-01 NULL
我試圖讓數爲員工在此基礎上DateGroupID我選擇誰是在每一天,這組由羣ID ACTIVE。
因此,例如, 如果我選擇DateGroupID = 1(在WHERe子句中,我會假設), 我希望每天在StartDate和EndDate之間獲得ACTIVE用戶數。 所以我的輸出應該像
GROUPID COUNT Date
A 1 2013-01-01 (1 EMP was added to this group on this day)
B 0 2013-01-01 (NO Emp for this group were active on this day)
C 0 2013-01-01 (NO Emp for this group were active on this day)
D 0 2013-01-01 (NO Emp for this group were active on this day)
A 1 2013-01-02 (NO Emp for this group were added but 1 is active from the past)
B 0 2013-01-02 (NO Emp for this group were active on this day)
C 0 2013-01-02 (NO Emp for this group were active on this day)
D 0 2013-01-02 (NO Emp for this group were active on this day)
A 1 2013-01-03 (NO Emp for this group were added but 1 is active from the past)
B 0 2013-01-03 (NO Emp for this group were active on this day)
C 0 2013-01-03 (NO Emp for this group were active on this day)
D 0 2013-01-03 (NO Emp for this group were active on this day)
A 1 2013-01-04 (NO Emp for this group were added but 1 is active from the past)
B 0 2013-01-04 (NO Emp for this group were active on this day)
C 0 2013-01-04 (NO Emp for this group were active on this day)
D 0 2013-01-04 (NO Emp for this group were active on this day)
A 2 2013-01-05 (1 more Emp was added to this group on this day)
B 1 2013-01-05 (1 EMP was added to this group on this day)
C 1 2013-01-05 (1 EMP was added to this group on this day)
D 0 2013-01-05 (NO Emp for this group were active on this day)
.
.
.
.
A 2 2013-01-17 (2 EMP active on this day for this group)
B 2 2013-01-17 (1 more Emp was added to this group on this day))
C 1 2013-01-17 (NO Emp for this group were added but 1 is active from the past)
D 0 2013-01-17 (NO Emp for this group were active on this day)
.
.
.
A 2 2013-03-24 (2 EMP were removed and added as for this day, 2 active EMP)
B 4 2013-03-24 (So far 4 active EMP for this group)
C 3 2013-03-24 (So Far 3 active EMP for this group)
D 2 2013-03-24 (So far 2 active EMP for this group)
或更好的視野
當我選擇DateGoupID = 3
GroupID 2013-01-15 2013-01-16 2013-01-17 2013-01-18 2013-01-19 2013-01-20 2013-01-21
A 2 2 2 2 2 2 2
B 1 1 2 2 2 2 2
C 1 1 1 1 1 1 1
D 0 0 0 0 0 0 0
什麼是你在連接這些表?或者,它是否在startdate和enddate之間的連接日期? – CodeMonkey 2013-04-03 22:24:02
我想檢查我的JoinDate是否屬於DateGroupID的任何日期......它是否有意義..容易混淆?所以這將是你想象中的後半部分。 – 007 2013-04-03 22:26:04