查询将产生类似于以下示例的内容:
col1 col2
A 0
B 0
B 1
C 0
D 1
现在我不希望col1中有重复项。但是,当col1有重复项时,应给col2 = 1(或最大值)的行,而不要给col2 = 0的行。所以结果将是:
col1 col2
A 0
B 1
C 0
D 1
此查询的外观如何?
编辑:
max有效,但是有一个第三列,当col2 = 1时具有一些文本值 如何获得正确的结果?因此,当col1中有重复项时,则获得col2 = 1的行
col1 col2 col3 col1 col2 col3
A 0 A 0
B 0 B 1 XYZ
B 1 XYZ --> C 0
C 0 D 1 YXA
D 1 YXA
谢谢!
答案 0 :(得分:1)
签出MAX()函数:https://docs.microsoft.com/en-us/sql/t-sql/functions/max-transact-sql?view=sql-server-2017
SELECT col1,MAX(col2)
FROM [yourTable]
GROUP BY col1