如何查詢一個表中某字段重複記錄

select a.* from 一個表 a,(select 某字段 from 一個表 group by 某字段 having count(*)>1) as b
where a.某字段=b.某字段  

select columnname
from tablename
group by columnname
having count(*) > 1

SQL> select b.id,b.doctime from (select id,count(*) sumnum from test1 group by i
d) a,test1 b where a.id=b.id and a.sumnum>1;

ID DOCTIME
---------- ---------
1 01-JUL-02
1 01-MAY-02
1 20-AUG-02
1 01-JUL-02
1 01-SEP-02

Elapsed: 00:00:00.40

select id,count(*) from tablename group by id having count(*) > 1

請問我想取出(oracle)數據庫中某一字段下含有重複值得記錄,就是檢查出有重複值的項,例如 (人員信息表,我想查詢出含有相同身份證號的人,在web頁面展示查詢結果,由於數據量比較大還要考慮效率)sql語句如何寫?

如果只查身份證可以:
select 身份證號,count(*) from 人員信息表
group by 身份證號 having count(*)>1

查信息表全部的話:
select * from 人員信息表
where
身份證號=(select 身份證號 from 人員信息表
group by 身份證號 having count(*)>1)

發佈了0 篇原創文章 · 獲贊 5 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章