msyql重複排除

でbusi_idがどこユーザー情報から削除する
(からbusi_id選択
(busi_id有するカウント(busi_id)> 1)TMP1によってグループユーザー情報からbusi_id選択)
しないでとID
からIDを選択する(
busi_id持つ数でグループユーザー情報から(セレクト分(ID)IDを(busi_id)> 1)TMP2);


。无主键添加主键再去重操作


DELETE FROM ユーザーID 、NOT INはSELECT 一時は.min_id FROM SELECT MIN (ID )min_id FROM ユーザーGROUP 名で、年齢AS 温度を

主キーは、設計テーブルで指定されていない場合、
可能な複製は、データのインポートをインポートするときに
同じことが表に表示された複数の複数の記録をもたらします。
この問題を解決するためのアイデアを、次のとおりです。

明確な声明を使用すると、一時テーブルのtmpに保存された重複レコードを除外していない。
表tmpなどを(明確なのSnO、SNA​​ME、年齢、SからセックスをSELECT)を作成し、
 
元のテーブル内のデータレコードを削除
sから削除し、
 
一時テーブル内のデータ元のテーブルに挿入されます。
TMPから選択* sの挿入、
 
一時テーブルの削除
ドロップテーブルTMPを、 

 

 

 

 

私たちは名前と性別が同じデータである削除したい場合は2ここで紹介する方法は、学生、名前と性別(M:女性、1 0)のテーブルがあります

まず、データシートを見て

番号 フルネーム 性別
1  王呂 0
2  李孟 0
3  張元帥  1 
4   李孟   0 
5  張元帥  1 
6   劉タオ   1 

NO.1

同上小さなデータ保持

学生T1、学生T2からT1をDELETE 
t1.name = t2.name AND t1.sex = t2.sexとt1.id> t2.id

ID大きなデータ保持

学生T1、学生T2からT1をDELETE 
t1.name = t2.name AND t1.sex = t2.sexとt1.id <t2.id

 

なお、最後のt1.id> t2.idを忘れないでください、それ以外の場合は、運転前にデータをバックアップしてください、すべてのデータが削除されます

 

NO.2

student_tmp(名前、性別)。INSERT INTO 
DISTINCT名を選択し、学生FROMセックス

 

概要

二つの方法の長所と短所:

二つの方法のために必要な時間は短くなるが、第二の方法主キーがUUIDであるとき、それに対処する必要があり、次のSQLにそれを実行し、int型をインクリメントするための主キーになります。

UPDATEのstudent_tmpセットID = UUID()

おすすめ

転載: www.cnblogs.com/Struts-pring/p/11032918.html