Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Unterabfragen vs. Joins

Eine "korrelierte Unterabfrage" (d. h. eine, bei der die Where-Bedingung von Werten abhängt, die aus den Zeilen der enthaltenden Abfrage erhalten wurden) wird einmal für jede Zeile ausgeführt. Eine nicht korrelierte Unterabfrage (eine, bei der die Where-Bedingung unabhängig von der enthaltenden Abfrage ist) wird zu Beginn einmal ausgeführt. Die SQL-Engine macht diese Unterscheidung automatisch.

Aber ja, EXPLAIN-PLAN liefert Ihnen die schmutzigen Details.