ClaimID ClaimStatusCode StatusDate
11, Closed, 2010-05-10 12:19:00.000
11, Open, 2010-05-25 09:30:00.000
11, Closed, 2011-06-01 00:00:00.000
11, Open, 2011-06-10 00:00:00.000
22, Closed, 2011-03-14 00:00:00.000
22, Open, 2011-05-04 00:00:00.000
33, Closed, 2007-12-19 17:19:00.000
33, Open, 2007-12-24 12:07:00.000
**33, Open, 2008-09-08 15:36:00.000**
44, Closed, 2008-11-19 17:19:00.000
44, Open, 2008-12-24 12:07:00.000
44, Closed, 2009-07-28 15:36:00.000
对于任何ClaimID,如果打开声明状态由open打开,则不需要第二个打开状态行。每次关闭都会被打开。 此处最后一行ClaimID 33与StatusDate 2008-09-08 15:36:00.000不是必需的(以星号标出以供参考)。 我尝试使用rownumber函数,但没有运气。删除连续的行
的答案应该是:每次夜
ClaimID ClaimStatusCode StatusDate
11, Closed, 2010-05-10 12:19:00.000
11, Open, 2010-05-25 09:30:00.000
11, Closed, 2011-06-01 00:00:00.000
11, Open, 2011-06-10 00:00:00.000
22, Closed, 2011-03-14 00:00:00.000
22, Open, 2011-05-04 00:00:00.000
33, Closed, 2007-12-19 17:19:00.000
33, Open, 2007-12-24 12:07:00.000
44, Closed, 2008-11-19 17:19:00.000
44, Open, 2008-12-24 12:07:00.000
44, Closed, 2009-07-28 15:36:00.000
如果只有它是那么容易。这不处理ClaimID = 11,它已被打开,关闭,然后再次打开。 –
但它也删除了ClaimID 11的两条记录。 – Punia
我看到了 - 然后使用HAVING子句找到具有太多“打开”状态的子句。顺便说一句 - 根据你给的例子,这看起来不太好,但我假设(你没有在你的例子中)每个索赔的第一个记录将是'开放'而不是'关闭'。 – Chains