假设有一张书目信息表books,有时会出现同一书目信息插入两次及以上的情况。如何找出这些重复的书目信息,并删除冗余的信息?
查找出同一书目出现两次及以上的记录
select book_name,count(book_name) from books group by book_name having count(book_name)>1;
从这些重复的记录中删除冗余记录,只保留book_id最小的记录
select * from books where book_name in
(
select book_name from books group by book_name having count(book_name)>1
)
and book_id not in
(
select min(book_id) from books group by book_name having count(book_name)>1
);
文章转载自一品数据邦,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




