Access SQL 计算与 dup 的日期差异
Access SQL calculating date difference from dup
我有一个 table 按日期记录状态
t1
ID Date Status
101 1 N
101 2 N
101 3 P
101 4 P
101 5 R
101 6 R
101 7 R
102 1 N
102 2 N
102 3 P
102 4 N
102 5 N
102 6 N
102 7 P
103 5 N
103 6 N
103 7 P
但我一直在尝试获得一个结果,我可以计算每个状态的周期,并且只显示状态更改的日期。
ID Date Status Period
101 1 N 2
101 3 P 2
101 5 R 2
102 1 N 2
102 3 P 1
102 4 N 3
102 7 P 1
103 5 N 2
103 7 P 1
请帮忙...
提前致谢!
我认为这可以满足您的需求:
SELECT Table.*, tA.Period
FROM Table INNER JOIN (SELECT ID, Status, MIN(Date) AS DateOfChange, COUNT(*) as Period
FROM Table
GROUP BY ID, Status) AS tA ON Table.ID = tA.ID
AND Table.Date = tA.DateOfChange
我有一个 table 按日期记录状态 t1
ID Date Status
101 1 N
101 2 N
101 3 P
101 4 P
101 5 R
101 6 R
101 7 R
102 1 N
102 2 N
102 3 P
102 4 N
102 5 N
102 6 N
102 7 P
103 5 N
103 6 N
103 7 P
但我一直在尝试获得一个结果,我可以计算每个状态的周期,并且只显示状态更改的日期。
ID Date Status Period
101 1 N 2
101 3 P 2
101 5 R 2
102 1 N 2
102 3 P 1
102 4 N 3
102 7 P 1
103 5 N 2
103 7 P 1
请帮忙... 提前致谢!
我认为这可以满足您的需求:
SELECT Table.*, tA.Period
FROM Table INNER JOIN (SELECT ID, Status, MIN(Date) AS DateOfChange, COUNT(*) as Period
FROM Table
GROUP BY ID, Status) AS tA ON Table.ID = tA.ID
AND Table.Date = tA.DateOfChange