【发布时间】:2019-04-13 20:35:04
【问题描述】:
我想选择一行中的多列是否相同。例如:
col1 col2 col3 col4
a b 1 2
b b 1 2
a c 1 2
b b 1 3
a c 2 1
条件:仅当列 (col1, col2, col3) 的值与其他行不同且 col4 的值是相同的最大行数时才选择。
例如预期的输出是:
a b 1 2
b b 1 3
a c 1 2
a c 2 1
【问题讨论】:
-
当您实际尝试编写 SQL 查询时,它们变得越来越可能。话虽如此,您是否尝试过自己回答这个问题?
-
您有两个答案,因为当您说 col4 是最大时,您的意思并不清楚。最大什么? col3 和 col4?其他匹配的行?还有什么?
-
@TimBiegeleisen 我已经尝试过 distinct 并没有任何意义
-
@Hogan 我不明白你的意思,伙计们。 col4 的值是整数,所以如果有多个相同的行,它将返回具有 col4 最大值的行
-
@HungNguyen 如果你 accept the most appropriate answer 会很好
标签: sql sql-server tsql sql-server-2012