在sql server中选择重复列
表1在sql server中选择重复列,sql,sql-server,Sql,Sql Server,表1 Id Name 1 xxxxx 1 ccccc 2 uuuuu 3 ddddd 我想选择Id具有相同Id 如何执行此操作?您可以找到具有多个条目的ids,然后使用左连接/非空模式从原始表中检索相应的数据: SELECT t1.* FROM tbl t1 LEFT JOIN ( SELECT id FROM tbl GROUP BY id HAVING COUNT(*)
Id Name
1 xxxxx
1 ccccc
2 uuuuu
3 ddddd
我想选择Id
具有相同Id
如何执行此操作?您可以找到具有多个条目的
id
s,然后使用左连接
/非空
模式从原始表中检索相应的数据:
SELECT t1.*
FROM tbl t1
LEFT JOIN ( SELECT id
FROM tbl
GROUP BY id
HAVING COUNT(*) > 1) t2 ON t1.id = t2.id
WHERE t2.id IS NOT NULL
其他可能的解决方案包括使用EXISTS
或IN
子句代替LEFT JOIN
/不为空
Y as (
select *, count(*) over (partition by id) counter
from X)
select id, name from Y where counter > 1