搜索
编程论坛
→
数据库技术
→
『 SQL Server论坛 』
→ sql 查询相同记录的语句
标题:
sql 查询相同记录的语句
只看楼主
都督
等 级:
新手上路
帖 子:56
专家分:0
注 册:2007-9-12
楼主
问题点数:0 回复次数:8
sql 查询相同记录的语句
例如:
一张表table1有2个字段,一个字段是id是自动标号,另一个是value值。
table 1
id value
1 11
2 22
3 22
4 11
怎么找出这个表中的相同记录。请大家帮忙,这是我上次面试的题目,明天复试。谢谢大家了。
搜索更多相关主题的帖子:
sql
语句
记录
查询
2008-06-16 18:08
都督
等 级:
新手上路
帖 子:56
专家分:0
注 册:2007-9-12
第
2
楼
得分:0
大家帮帮忙呀,我是用一个自我连接。
2008-06-16 18:33
都督
等 级:
新手上路
帖 子:56
专家分:0
注 册:2007-9-12
第
3
楼
得分:0
表里面有N条相同的记录,要查出来.
如:
ID Name
12 d
34 e
543 t
34 e
12 d
45 y
543 t
查询的结果应为:
ID Name
12 d
12 d
34 e
34 e
543 t
543 t
假如表名为Table03,可以用下面语句轻松实现:
select id,name from table03 where name in(select name from table03 group by name having count(name)>1)
2008-06-16 18:36
hgs50242935
等 级:
新手上路
帖 子:3
专家分:0
注 册:2008-6-17
第
4
楼
得分:0
select name,count(id) as a from table group name having count(id)>1
2008-06-17 17:12
jxyga111
来 自:中華人民共和國
等 级:
贵宾
威 望:
33
帖 子:6015
专家分:895
注 册:2008-3-21
第
5
楼
得分:0
用rs.round>0时就提示
2008-06-17 17:29
provoke
来 自:广州
等 级:
新手上路
威 望:
5
帖 子:175
专家分:0
注 册:2007-6-14
第
6
楼
得分:0
[bo][un]hgs50242935[/un] 在 2008-6-17 17:12 的发言:[/bo]
select name,count(id) as a from table group name having count(id)>1
这种方法只适用于只有两个选择字段的查询,而且查询结果也不是楼主想要的,楼主的2个字段绝对是碰巧,或许还有其他字段没列出来而已。
可以考虑这样:
select * from table1 where id in (select id from table1 group by id having count(id)>1)
只有id计数大于1的记录才返回
爱我至爱,至死不渝!
2008-06-18 18:49
bb3852
等 级:
新手上路
帖 子:82
专家分:0
注 册:2008-4-21
第
7
楼
得分:0
好像用group by或者in会降低性能的,
select * from table1 t1
where exists(select 1 from table1
where (select count([value]) from table1 t2
where t2.[value]=t1.[value])>1)
2008-06-19 10:18
jxyga111
来 自:中華人民共和國
等 级:
贵宾
威 望:
33
帖 子:6015
专家分:895
注 册:2008-3-21
第
8
楼
得分:0
还没有解决啊
烈焰照耀世界,斌凍凍千萬裏
2008-06-19 19:21
都督
等 级:
新手上路
帖 子:56
专家分:0
注 册:2007-9-12
第
9
楼
得分:0
解决了
2008-06-20 14:45
9
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-219485-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.113986 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved