mySQL. Alles EInträge auslesen die keinen Join Eintrag haben

Wenn ich mit

$query = " SELECT
t1.*,
t2.PARENTID,
t2.name
FROM
03_struktur_to_user AS t1
LEFT OUTER JOIN
00_struktur AS t2 ON t1.SID = t2.SID
GROUP BY
t2.SID
ORDER BY
t2.name
";

Daten abfrage, bekomme ich alle Einträge die eine Zuordnung in der zweiten tabelle haben. Wie bekomme ich genau die anderen? Also di, die keinen Eintrag in der zweiten tabelle haben?
 
Hallo,

mit dem Gegenstück zum LEFT OUTER JOIN, dem RIGHT OUTER JOIN.

Zusammen kannst du sie dir mittels FULL OUTER JOIN ausgeben lassen.

Markus
 
Das "FULL OUTER JOIN" wirdt bei mri einen Fehler. Wie kann ich das anders realisieren oder wo könnte der Fehler liegen? Ist das nru ab bestimmten mySQL VErsionen möglich?
 
Hallo,

mhm welche Version von MySQL benutzt Du?

Ansonsten ginge auch ein LEFT OUTER JOIN über ein UNION ALL verknüpft mit einem RIGHT OUTER JOIN.

Markus
 
Hallo,

5.0.22

Wie genau geht das in der alternativen? Beispiel?


Hie rmeine aktuelle Abfrage in der FULL JOIN Version

$query = " SELECT
t1.SID,
t1.PARENTID,
t1.name,
t2.*
FROM
00_struktur AS t1
FULL OUTER JOIN
03_struktur_to_user AS t2 ON t1.SID = t2.SID
WHERE
t1.status = 'aktiv'
GROUP BY
t1.SID
ORDER BY
t1.name
";


Das ist der Fehler:
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 'FULL OUTER JOIN 03_struktur_to_user AS t2 ON t1.SID = t2.SID WH' at line 8
 
Zuletzt bearbeitet:
Hallo,

z.B. so:

SQL:
SELECT t1.id, t1.name, t2.id, t2.name
  FROM tabelle t1
  LEFT OUTER JOIN tabelle2 t2 ON (t1.id = t2.id)
  .....
UNION
SELECT t1.id ,t1.name, t2.id,t2.name
  FROM tabelle t1
 RIGHT OUTER JOIN tabelle2 t2 ON (t1.id = t2.id)
   ....

Markus
 
Hallo,

nochmal zur Sicherheit:)

Ich möchte alle Datensätze aus der Strukturtabelle haben und wnen es in der Zusatztabelle zufällig auch Daten gibt, sollten diese Angefügt werden aber es sollte kein Ausschlusskriterium sein, wenn diese Daten nichtd a sind
 
Zuletzt bearbeitet:
Hallo,

und wie bekomme ich da ein ORDER BY rein?

Bei mir mault er immer rum das, das Feld nicht vorhanden ist. Wenn ich das Feld direkt angebe ohne tabellenreferenz, sagt er mir das Feld ist ambigious:(?!
 

Neue Beiträge

Zurück