mysqlデータベース内の重複データの削除について

  • 小さな問題と大きな詳細については、次の記事を参照してください。
  • 焦点は2番目のリンクにあります.1番目のリンクのアイデアは良いですが、2番目の方法と要約はより良いです。
  • https://www.cnblogs.com/luyingfeng/p/5772262.html
  • https://www.cnblogs.com/liyue-sqsf/p/9076902.html

表は次のとおりです。
ここに画像の説明を挿入

DELETE from S_score2 where id IN (
-- 	这里再加 一个 select 语句,因为 
--  警告:不能根据本表的查询结果来更新本表的数据,所以给表起个别名
	select * from (
		SELECT id from S_score2 
		where 
		(姓名, 课程) in
		(SELECT 姓名, 课程 FROM S_score2 GROUP BY 姓名, 课程 HAVING COUNT(*) > 1)
		and 
		id not in (SELECT min(id) from S_score2 GROUP BY 姓名, 课程 HAVING count(*)> 1)
) as stu_score

);
総括する:

この質問は単純に思えます。私は多くの解決策について考えましたが、長い間考えていました〜あまり言いません。皆さん、2つのリンクを注意深く見て、独自の方法で実装するのが最善です。
終わり。

おすすめ

転載: blog.csdn.net/pythonstrat/article/details/111598992