Vinzenz Mai: SQL Abfrage LEFT JOIN

Beitrag lesen

Hallo Chrisi

ich habe die Abfrage gerade mal im MySQL query Browser laufen lassen, nach ca. 120 Sekunden kommen dann die ersten Ergebnisse ...

Was steht denn in Deinen Spalten drin? Benötigst Du diese auch alle? SELECT * gilt es im Allgemeinen zu vermeiden.

Die Spalten UID sind in allen Tabellen primary Key, autoincrement und numerisch, macht es da denn überhaupt Sinn wenn ich einen Index drüber lege ? BZW. ist das zulässig ?

Eine Spalte, die alleiniger Träger des Primärschlüssels ist, ist stets mit einem unique-Index versehen, also erübrigt sich das Erstellen eines weiteren Index.

Eine weitere Anmerkung:
Du solltest einfach Deinen LEFT OUTER JOIN durch einen INNER JOIN ersetzen. Denn der liefert Dir genau, was Du willst:

  
SELECT  
  u.spalte1,  
  u.spalte2,  
  ...  
FROM user AS u  
INNER JOIN pictures ON u.UID = pictures.UID  

Freundliche Grüße

Vinzenz