+----+------------+
| ID | DATE |
+----+------------+
| 0 | 01/12/2007 |
| 0 | 15/02/2018 |
| 1 | 21/05/2006 |
| 1 | 03/12/2017 |
| 1 | 01/03/2007 |
| 1 | 23/11/2018 |
| 2 | 15/10/2019 |
| 3 | 11/10/2019 |
| 3 | 22/07/2000 |
| 4 | 08/05/2001 |
| 4 | 07/03/1998 |
+----+------------+
我需要一个SQL查询,所以该表将变成这样:
+----+------------+------------+------------+------------+
| ID | DATE_0 | DATE_1 | DATE_2 | DATE_3 |
+----+------------+------------+------------+------------+
| 0 | 01/12/2007 | 15/02/2018 | NULL | NULL |
| 1 | 21/05/2006 | 03/12/2017 | 01/03/2007 | 23/11/2018 |
| 2 | 15/10/2019 | NULL | NULL | NULL |
| 3 | 11/10/2019 | 22/07/2000 | NULL | NULL |
| 4 | 08/05/2001 | 07/03/1998 | NULL | NULL |
+----+------------+------------+------------+------------+
请记住,我已经知道相同ID行的最大数目不会超过4。
谢谢你。
请考虑此表:+ ---- + ------------ + | ID | DATE | + ---- + ------------ + | 0 | 2007年1月12日| | 0 | 15/02/2018 | | 1 | 2006年5月21日| | 1 | 2017/03/12 | | 1 | 2007年1月3日| | 1 | 23/11/2018 | ...
row_number()
和条件聚合: