今天,面试中遇到了一道公认很简单的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)