Hallo,
ich habe eine Frage bezüglich Formulierung eines Statements:
SQL-Code:
SELECT u.*, position.menge
FROM unterpartie u
left join position on u.id= position.id
WHERE position.ID is NULL
union
SELECT u.*, position.menge
FROM unterpartie u, position
WHERE u.id=position.id
and position.menge<> u.menge
Dazu folgende Erklärung:
Das Statement soll alle Datensätze aus der Tabelle u zurückgeben, die nicht in der Tabelle Position vorkommen
UND
Alle Datensätze aus Tabelle u, wo u.menge nicht mit position.menge übereinstimmt.
So weit so gut. Mein Problem ist, dass ich im ersten Teil des Statements alle Datensätze bekommen will, die nicht in der Tabelle Position vorhanden sind. Da ich "Select position.menge" abfrage bekomme ich hier einen Wert ungleich NULL...?!
Ich brauche "Position.menge", um die Union-Abfrage gestalten zu können. Die Anzahl der Spalten im "Select" muss bei beiden gleich sein. Außerdem brauche ich den Wert "Position.menge"
Kann mir jemand helfen das Statement zu korrigieren, so dass ich alle Datensätze erhalte, die nicht in "Position" vorkommen (also Position.menge is NULL) oder alle Datensätze, wo sich die Mengen unterscheiden.
Danke für eure Hilfe,
Gruß,