[PHP/MySQL] Was ist schneller Join oder n-Selects?

VanHellsehn

Erfahrenes Mitglied
Hallo liebe Community,

ich habe mich schon oft gefragt ob es performa?nter ist alles mit einem SQL-Join zu machen oder doch lieber 2-3 Selects zu machen. In der Theorie nat. der SQL-Join aber wenn die mir die Daten mit PHP noch aufbereiten muss, geht dann nicht der Performancevorteil verloren?

Hier mal ein Beispiel:
SQL:
SELECT post.*,tag.name
FROM post
LEFT JOIN post_tag ON post.id = post_tag.post_id
LEFT JOIN tag ON post_tag.tag_id = tag.id
 
Die Antwort kann man so nicht geben. Der Join ist mWn meistens schneller.
Wenn du jedoch die Tag-id/Namen Übersetzung an vielen Orten brauchst und es wenig Daten sind, dann ist es ev. Schneller diese in der Session abzulegen.

Grundsätzlich denke ich aber dass der JOIN mehr bringt, denn die DBMS ist darauf ausgelegt solche Daten zusammenzuführen.
 
Zurück