Kanubelkarl
Benutzer
- Beiträge
- 5
Hi, ich habe gerade ein kleines Problem mit einem Statement das icht nicht ganz verstehen, also bräuchte eine erklärung.
Die einfache Variante die ich auch verstehe ist
select artikelnummer, artikel from artikel
where lieferant not in (select lieferant_ID from lieferant where ort = 'Berlin')
or lieferant is null;
Also das mir alle Artikelnummern mit Artikel angezeigt werden, wo der Lieferant nicht aus Berlin ist, oder die keinen Lieferant haben. Jetzt habe ich noch ein Statement das schneller gehen soll.
select a.artikelnummer, a.artikel, from artikel a, lieferant l
where a.lieferant = l.lieferant_ID (+)
and l.lieferant_id is null
and l.ort (+)= 'Berlin'
order by a.artikelnummer;
laut unserem Lehrer soll beides Funktionieren, jedoch ist mit nicht klar wieso das funktioniert.
PS:Mein Lehrer weis es auch nicht so recht
Grüße
Kanubelkarl
Die einfache Variante die ich auch verstehe ist
select artikelnummer, artikel from artikel
where lieferant not in (select lieferant_ID from lieferant where ort = 'Berlin')
or lieferant is null;
Also das mir alle Artikelnummern mit Artikel angezeigt werden, wo der Lieferant nicht aus Berlin ist, oder die keinen Lieferant haben. Jetzt habe ich noch ein Statement das schneller gehen soll.
select a.artikelnummer, a.artikel, from artikel a, lieferant l
where a.lieferant = l.lieferant_ID (+)
and l.lieferant_id is null
and l.ort (+)= 'Berlin'
order by a.artikelnummer;
laut unserem Lehrer soll beides Funktionieren, jedoch ist mit nicht klar wieso das funktioniert.
PS:Mein Lehrer weis es auch nicht so recht
Grüße
Kanubelkarl