【发布时间】:2016-12-19 06:13:41
【问题描述】:
我有以下疑问:
WITH CTE AS(
SELECT N, A, B,
COUNT(*) OVER(PARTITION BY A, B) as cnt
FROM Table
)
SELECT * FROM CTE WHERE cnt > 1
从表中返回所有重复计数。输出如下所示:
Table A (result of SQL)
N | A | B | cnt
----------------
1 | a | b | 2
1 | a | b | 2
1 | a | c | 1
1 | d | e | 2
2 | d | e | 2
我现在想根据 N 选择重复值(A & B 相同,多个不同的 N),所以:
Table B
N | A | B | cnt
----------------
1 | d | e | 2
2 | d | e | 2
我是否应该在表 A 上再次应用上面的 SQL 代码来获取表 B?或者有没有更简单的解决方案?
【问题讨论】:
标签: sql sql-server