我有一张表(测试),其中包含以下数据
code Name relatedCode
1 A 0
2 B 1
3 C 1
4 D 0
我想写一个查询来选择:
1 A
2 B
4 D
表示在具有相同relatedCode的行2,3之间只选择其中一个
答案 0 :(得分:1)
SELECT code, name
FROM (
SELECT *,
ROW_NUMBER() OVER (PARTITION BY relatedCode ORDER BY code) rn
FROM test
) q
WHERE rn = 1