【发布时间】:2018-09-10 09:35:48
【问题描述】:
我的表中有两列:
- RECE_KEY
- INVE_KEY
我只想返回 RECE_KEY 最大的 INVE_KEY 行。
例子:
INVE_KEY = 1 包含在 RECE_KEY = 1,2,3 中。 此示例中的最大 RECE_KEY 为 3,因此正确的结果是:
+----------+----------+
| RECE_KEY | INVE_KEY |
+----------+----------+
| 3 | 1 |
| 3 | 1 |
| 3 | 1 |
| 3 | 1 |
+----------+----------+
对于整个表的预期结果是:
+----------+----------+
| RECE_KEY | INVE_KEY |
+----------+----------+
| 3 | 1 |
| 3 | 1 |
| 3 | 1 |
| 3 | 1 |
| 3 | 4 |
| 5 | 5 |
| 5 | 5 |
| 5 | 5 |
+----------+----------+
我试图解决这个分组和 where 条件但没有成功。我想我错过了什么?
示例表如下:
DECLARE @JEREIN TABLE
(
RECE_KEY INT,
INVE_KEY INT
)
INSERT INTO @JEREIN
VALUES(1,1),(1,1),(1,1),(2,1),(2,1),(3,1),(3,1),(3,1),(3,1),(2,4),(2,4),(3,4),(3,5),(3,5),(5,5),(5,5),(5,5)
【问题讨论】:
标签: sql sql-server tsql select top-n