LEFT JOIN Abfrage mit WHERE nach NULL

Heavy-Dee

Benutzer
Beiträge
5
Hallo zusammen,
hab mal wieder ne Newbie Frage.

Habe zwei Tabellen mit LEFT JOIN Beziehung
D.h. Alle Datensätze von der Haupttabelle auch die bei der es keine Beziehung zur Nebentabelle (fehlende Beziehung -> Spalte bekommt NULL) gibt.
Funktioniert soweit auch.
Allerdings möchte ich nun eine WHERE-Klausel einfügen, die mir sowohl alle Datensätze mit NULL (ohne Beziehung als auch die mit einem best. Wert selektiert.

SELECT * FROM `role`
LEFT JOIN `organ` ON organ.orgid = fk_orgid
WHERE `fk_orgid` = 'NULL' OR `fk_orgid` = '303202'
ORDER BY `fk_orgid` asc

Stehe irgendwie auf dem Schlauch warum das nicht funzt.

Bei ... WHERE `fk_orgid` != 'NULL' ... bekomme ich alle die nicht NULL sind.
Bei ... WHERE `fk_orgid` != 'NULL' AND `fk_orgid` = '303202' ... bekomme ich nur die '303202 sind.

Kann mir bitte jmd helfen?
 
Werbung:
Erstmal entspricht 'NULL' normalerweise dem Text NULL und nur NULL (ohne Striche) dem echten NULL-Wert. Der kann außerdem nicht mit = NULL geprüft werden sondern nur mit IS NULL oder IS NOT NULL.
 
Wie könnte man denn keine künstlichen Schlüssel haben wollen. Das ist ja fast so als würde man ein System für Computernamen erfinden um nicht mehr mit IP Adressen arbeiten zu müssen - wiederwärtig.
Ein künstlicher Schlüssel wäre es wenn du für die Computernamen jetzt eine inkrementell fortlaufende Nummerierung einführst. :P
 
Werbung:
Zurück
Oben