Sql server 编写查询以选择具有相同列数据的行之一
我有一个包含以下数据的表格(测试)Sql server 编写查询以选择具有相同列数据的行之一,sql-server,tsql,Sql Server,Tsql,我有一个包含以下数据的表格(测试) code Name relatedCode 1 A 0 2 B 1 3 C 1 4 D 0 我想写一个查询来选择: 1 A 2 B 4 D 意味着在第2行和第3行中,具有相同的relatedCode,只需选择其中一个这会不会使它从测试中选择代码,名称,其中relatedCode=0?因为任何非零最终都会返回到一个基本级别的代码
code Name relatedCode
1 A 0
2 B 1
3 C 1
4 D 0
我想写一个查询来选择:
1 A
2 B
4 D
意味着在第2行和第3行中,具有相同的relatedCode,只需选择其中一个这会不会使它
从测试中选择代码,名称,其中relatedCode=0
?因为任何非零最终都会返回到一个基本级别的代码部分?我编辑了它并找到了答案
SELECT code, name
FROM (
SELECT *,
ROW_NUMBER() OVER (PARTITION BY relatedCode ORDER BY code) rn
FROM test
) q
WHERE rn = 1