我需要帮助在SQL Server 2012中编写查询以获取以下数据。数据按日期排序。
Person DEVICE DATE
------ ---
person1 D1 1/1/2015
person1 D1 5/1/2015
person1 D2 6/1/2015
person1 D2 10/1/2015
person1 D1 11/1/2015
person1 D1 16/1/2015
person1 D2 17/1/2015
person1 D2 20/1/2015
我需要有一个GN列,只要DEVICE值发生变化就会增加。我的结果应如下所示
GN Person DEVICE DATE --- ------ ----- ------- 1 person1 D1 1/1/2015 1 person1 D1 5/1/2015 2 person1 D2 6/1/2015 2 person1 D2 10/1/2015 3 person1 D1 11/1/2015 3 person1 D1 16/1/2015 4 person1 D2 17/1/2015 4 person1 D2 20/1/2015
答案 0 :(得分:1)
这可以通过在case语句中使用lag函数来完成。滞后函数允许您将当前行值与其前一行进行比较。