【发布时间】:2021-04-30 09:03:24
【问题描述】:
如何在 SQL 中只保留一列中的最小值,同时保留其他列中的其余数据?我正在尝试过滤“OrderID”字段以按 CustomerID 和 Level 显示最低订单号。
表:
Order# |CustomerID | Level
12345 | 200 | 3
12389 | 200 | 3
12590 | 200 | 3
12790 | 200 | 4
13091 | 200 | 5
15678 | 500 | 3
15788 | 500 | 4
16100 | 500 | 4
16990 | 500 | 5
17331 | 600 | 3
17660 | 600 | 4
17700 | 600 | 5
我的目标是通过下面的结果表根据他们的 Order# 确定 CustomerID 第一次达到 3、4、5 级的时间。
所有其他订单编号在达到该级别后都将被删除,并创建一个新列级别 3、级别 4 和级别 5,以指示满足这些级别阈值的订单编号。
结果
CustomerID | Level 3 | Level 4| Level 5
200 | 12345 | 12790 | 13091
500 | 15678 | 15788 | 16990
600 | 17331 | 17660 | 17700
提前感谢您的宝贵时间。
【问题讨论】:
-
用您正在使用的数据库标记您的问题。