MySQL-Unterabfrage-Effizienz: Die Effizienz der Unterabfrage [SELECT id,`name` FROM customer where id IN(select DISTINCT(customerid) from searchaccount] hat die zehnfache Auswirkung.

MySQL-Unterabfrage Die endgültige Effizienzauswirkung
verwendet nur die ID:
explain SELECT * from customer where id in(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20)

Ergebnis:

Unterverwendung:
explain SELECT id,`name` FROM customer where id IN(select DISTINCT(customerid) from searchaccount WHERE kfuid=126 AND iskf=1) LIMIT 20
Ergebnis:

Ohne Unterabfrage ist der gleiche Effekt erreicht:
explain select DISTINCT(customerid) as id,c.name from searchaccount s LEFT JOIN customer c on s.customerid=c.id WHERE s.kfuid=126 AND s.iskf=1 limit 20

Die Effizienz ist zehnmal so groß
Verwandte kostenlose Lernempfehlungen:MySQL-Tutorial(Video)
Das obige ist der detaillierte Inhalt vonWie effizient ist die Verwendung von Unterabfragen durch MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!
MySQL ändert den Namen der Datentabelle
MySQL erstellt eine gespeicherte Prozedur
Der Unterschied zwischen Mongodb und MySQL
So überprüfen Sie, ob das MySQL-Passwort vergessen wurde
MySQL-Datenbank erstellen
MySQL-Standard-Transaktionsisolationsstufe
Der Unterschied zwischen SQL Server und MySQL
mysqlPasswort vergessen