请教各位!, 简单问题, 在线

dddd8888 2003-12-23 01:32:25
例:
table a
field1, field2, field3

field1, 和 field2 组合起来可能有重复
我想把有重复的记录都取出来, 无重复的剔除在外,
该怎样写 SQL 语句?
...全文
47 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
dddd8888 2003-12-23
  • 打赏
  • 举报
回复
我给不了分,稍等一下
dddd8888 2003-12-23
  • 打赏
  • 举报
回复
贴子回复次数大于跟给分次数
dddd8888 2003-12-23
  • 打赏
  • 举报
回复
谢谢各位
gmlxf 2003-12-23
  • 打赏
  • 举报
回复
create table tableA(field1 varchar(10),field2 varchar(10),field3 varchar(10))
insert tableA
select 'a','b','333'
union select 'a','b','3523'
union select 'a','bb','8'
union select 'c','d','38933'
union select 'c','d','8393'
union select 'e','f','983'
union select 'ee','ff','9843'
union select 'ee','ff','98473'

select * from tableA

select * from tableA a
where (select count(*) from tableA where field1=a.field1 and field2=a.field2)>1

drop table tableA
gmlxf 2003-12-23
  • 打赏
  • 举报
回复


select field1,field2 from a
group by field1,field2
having count(*) > 1

-- 如果想列出所有字段,你用下面的:
select * from tableA a
where (select count(*) from tableA where field1=a.field1 and field2=a.field2)>1
txlicenhe 2003-12-23
  • 打赏
  • 举报
回复
select a.* from tableA a
join (
select field1,field2 from tableA
group by field1,field2
having count(*) > 1) b on a.field1 = b.field1 and a.field2 = b.field2
dddd8888 2003-12-23
  • 打赏
  • 举报
回复
谢谢,
但我还想把field3也显示出来
txlicenhe 2003-12-23
  • 打赏
  • 举报
回复
select field1,field2 from tableA
group by field1,field2
having count(*) > 1

34,872

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧