数据库SQL语句:查询一张表中某字段重复的数据

今天,面试中遇到了一道公认很简单的sql题目,但却做错,在此记录,以作警钟。

题目: 
在book表中,查出bk_name属性值重复的记录数据数。

select count(*) from  book 
where bk_name in (
  select bk_name from
    ( select bk_name ,count(bk_name) countnum from book  group by bk_name) t
  where t.countnum>1
  );

或者

select count(*) from book where bk_name in
  (select bk_name name1 from book group by bk_name having count(bk_name)>1)

猜你喜欢

转载自blog.csdn.net/huofuman960209/article/details/78013305