Hallo Lukas.,
ich habe 2 Queries, die beide funktionieren und dasselbe Ergebnis produzieren. Nun weiß ich nciht recht, welche hiervon schneller arbeitet. Ich tendiere zu Lösung 2, habe aber keine rechte Begründung hierfür.
Wahrscheinlich sind die Queries gleich schnell, weil der Optimizer dein Problem erkennt. Aber genaueres kann dir EXPLAIN
sagen.
Lässt man den Optimizer außen vor, hängt es von der Größe der Ergebnismenge ab, welche Query schneller ist: ist die Ergebnismenge der Subquery klein, so wird die Subquery vermutlich schneller sein, weil das Resultset unangetastet bleibt. Ist die Menge groß, wird es die JOIN
-Variante sein, weil das Ergebnis der Subquery auf die Platte ausgelagert werden müsste.
Viel wahrscheinlicher aber ist, dass beide Queries gleich performen.
Kann mir einer anhand der Queries alleine hier überhaupt jemand helfen?
Nur sehr grob. Befrage EXPLAIN
und SELECT BENCHMARK()
, die sind die einzige autoritative Quelle.
LG,
CK