globe: Tuts aber auch nicht :-(

Beitrag lesen

n'abend,

Du hast mein Problem genau erkannt.

auch ein blindes Huhn trinkt gern mal 'nen Korn.

SELECT S.SpielerID, S.SpielerName, VZ.VereinsName, B.BewertungenFach, B.BewertungenLiga_o_Laender, B.BewertungenPaarung, B.BewertungenNote, B.BewertungenBemerkung
FROM tabelle_Spieler S, tabelle_Vereinszugehoerigkeit VZ

Das gibt hier ein Kreuzprodukt; relativ uncool. Versuche mit expliziten JOINs zu arbeiten.
Außerdem Joinst du hier eine Tabelle rein, die du in der SubQuery heranziehst. Das ist in diesem Fall unnötig.

LEFT JOIN tabelle_Bewertungen B ON (S.SpielerID = B.SpielerID)
WHERE S.SpielerID IN (
     SELECT VZ.SpielerID
     FROM tabelle_Vereinszugehoerigkeit VZ

Hier liegt dein Problem. Du versuchst den Alias "VZ" zwei mal zu benutzen. Das geht natürlich nicht.

WHERE  VZ.VereinsID = 2 LIMIT 0, 30

Hier fehlt ein »)« am Ende.

You have an error in your SQL syntax.  Check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT VZ.SpielerID
     FROM tabelle_Vereinszugehoerigkeit VZ

In der Regel kann man durch diese Hinweise zumindest erahnen wo das Problem liegt. ;)

Die obigen Erkenntnisse neu zusammengewürfelt:

SELECT  
      S.SpielerID,  
      S.SpielerName,  
      VZ.VereinsName,  
      B.BewertungenFach,  
      B.BewertungenLiga_o_Laender,  
      B.BewertungenPaarung,  
      B.BewertungenNote,  
      B.BewertungenBemerkung  
FROM tabelle_Spieler S  
JOIN tabelle_Vereinszugehoerigkeit VZ  
  ON ( VZ.SpielerID = S.SpielerID AND VZ.VereinsID = 2 )  
LEFT JOIN tabelle_Bewertungen B  
  ON ( B.SpielerID = S.SpielerID )  
LIMIT 0, 30

Bemerke, dass wir die WHERE Bedingung »VZ.VereinsID = 2« in die ON Bedingung des Joins gezogen haben. Diese Optimierung bewirkt, dass die Selektion vor dem Join passiert, also weniger Datensätze mit einander verbunden werden müssen.

weiterhin schönen abend...

--
Freundlich wie man war, hat man mir Großbuchstaben geschenkt.
sh:( fo:# ch:# rl:| br:> n4:& ie:{ mo:} va:) de:] zu:} fl:( ss:? ls:[ js:|