我正在尝试解决我遇到的问题。计数日SQL Server
| ID | Op | Object | STATE | Timestamp |
| 01 | 1 | A | 1 | 01-02-2016|
| 02 | 1 | A | 2 | 04-02-2016|
| 03 | 1 | A | 1 | 10-02-2016|
| 04 | 1 | A | 3 | 01-02-2016|
| 05 | 2 | A | 2 | 02-02-2016|
| 06 | 3 | A | 1 | 05-02-2016|
| 07 | 3 | A | 2 | 10-11-2016|
我需要编写返回计数的天,一个对象过去在状态2 实施例中,对象A,从04-02到留在10-02 STATE 2 + 02-02一个SQL到05-02和从10-11到今天这么6天+3天+4天。
SQL return 13
目前通过代码,但我需要它在SQL提取,我不知道如何继续。这是可能的SQL?
谢谢
我不明白这张桌子。在01-02-2016对象A切换到状态1(记录01)和状态3(记录04)?从2016年2月2日到2016年2月3日,它的状态为1(记录01)和状态2(记录05)。 2016年4月2日,它有两次状态2(来自记录05和02),05-02-2016有状态2(来自记录02)和状态1(来自记录06)。所以一个对象有多个状态,你只能通过ID排序和查找重叠的日期范围来确定哪个状态和多少个状态? –