OUTER JOINs benötigt man nur, wenn von einer Tabelle auch die Datensätze mit im Resultset sein sollen, für welche es keine Entsprechung in der anderen Tabelle gibt. Bei LEFT JOIN sind immer alle Datensätze der linken Tabelle im Resultset.
Dann würde ich sagen, ich brauche die 2. Variante. Ich will alle Resultate aus t und nur die Suchergebnisse bzw. max() aus m
Aber wenn ich jetzt inner join verwende:
table type possible_keys key key_len ref rows Extra
m index t_id t_id 5 NULL 86 Using temporary; Using filesort
t eq_ref PRIMARY,b_id PRIMARY 4 m.t_id 1 Using where
ist die Zeile rows wieder bei 86 und da m die größere Tabelle werden wird. scheint mir es sinnvoll auf t zu joinen (sagt man das so?)
Struppi.