我正在寻找以前的记录(记录)的ID基于日期.某些ID对同一日期有多个记录.
我try 了LAG,但没有奏效,因为我一次约会有多个记录(请参见下面我try 的内容).
SELECT
ID, Rec, Date,
LAG(Rec) OVER (PARTITION BY ID ORDER BY Date DESC) AS [Previous Rec]
FROM
[Source Table]
还可以使用什么来获得所需的结果(请参见下文).
源表:
ID | Rec | Date |
---|---|---|
40A | 1022 | 02/03/2022 |
40A | 1029 | 02/03/2022 |
40A | 5542 | 04/11/2022 |
40A | 7693 | 04/11/2022 |
40A | 1580 | 06/10/2022 |
40A | 9700 | 08/15/2022 |
88A | 9911 | 09/10/2022 |
88A | 1033 | 12/15/2022 |
88A | 1443 | 03/15/2023 |
预期结果:
ID | Rec | Date | Previous Rec | Previous Date |
---|---|---|---|---|
40A | 1022 | 02/03/2022 | NULL | NULL |
40A | 1029 | 02/03/2022 | NULL | NULL |
40A | 5542 | 04/11/2022 | 1022 | 02/03/2022 |
40A | 5542 | 04/11/2022 | 1029 | 02/03/2022 |
40A | 7693 | 04/11/2022 | 1022 | 02/03/2022 |
40A | 7693 | 04/11/2022 | 1029 | 02/03/2022 |
40A | 1580 | 06/10/2022 | 5542 | 04/11/2022 |
40A | 1580 | 06/10/2022 | 7693 | 04/11/2022 |
40A | 9700 | 08/15/2022 | 1580 | 06/10/2022 |
88A | 9911 | 09/10/2022 | NULL | NULL |
88A | 1033 | 12/15/2022 | 9911 | 09/10/2022 |
88A | 1443 | 03/15/2023 | 1033 | 12/15/2022 |