Heim > Datenbank > MySQL-Tutorial > Hauptteil

Einige komplexe SQL-Anweisungen von MySQL (doppelte Zeilen abfragen und löschen)

巴扎黑
Freigeben: 2017-05-21 11:41:33
Original
1747 Leute haben es durchsucht

In diesem Artikel werden hauptsächlich einige komplexe SQL-Anweisungen von MySQL vorgestellt (Abfragen und Löschen doppelter Zeilen).

1. Finden Sie doppelte Zeilen


SELECT * FROM blog_user_relation a WHERE (a.account_instance_id,a.follow_account_instance_id) 
IN (SELECT account_instance_id,follow_account_instance_id FROM blog_user_relation GROUP BY account_instance_id, follow_account_instance_id HAVING
 COUNT(*) > 1)
Nach dem Login kopieren

2. Doppelte Zeilen löschen (eine behalten)

PS: Wegen MySQL-Löschen, wenn es in der Where-Bedingung der gelöschten Tabelle gibt, und es gibt auch diese in in der Tabelle , es kann nicht gelöscht werden.


/*创建个临时表*/
CREATE TABLE blog_user_relation_temp AS
(
 SELECT * FROM blog_user_relation a WHERE 
 (a.account_instance_id,a.follow_account_instance_id) 
 IN ( SELECT account_instance_id,follow_account_instance_id FROM blog_user_relation GROUP BY account_instance_id, follow_account_instance_id HAVING COUNT(*) > 1)
 AND 
 relation_id 
 NOT IN (SELECT MIN(relation_id) FROM blog_user_relation GROUP BY account_instance_id, follow_account_instance_id HAVING COUNT(*)>1));

/*删除数据*/
DELETE FROM `blog_user_relation` WHERE relation_id IN (SELECT relation_id FROM blog_user_relation_temp);

/*删除临时表*/
DROP TABLE blog_user_relation_temp;
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonEinige komplexe SQL-Anweisungen von MySQL (doppelte Zeilen abfragen und löschen). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage