Access-o-Mania

Datenbanken => MS SQL-Server => Thema gestartet von: bejay am September 27, 2012, 21:39:05

Titel: Abfrageproblem MSSQL 2008
Beitrag von: bejay am September 27, 2012, 21:39:05
Hallo,

ich habe eine Sicht V_tmpLagerartikel die der Tabelle tmpLager mit den Feldern Material(nvarchar) [alias Artikelnummer] Materialtext(nvarchar) Regal(nvarchar) Fach(nvarchar)
den Fremschlüssel ArtikelGUID aus der Tabelle Artikel hinzufügt. Das ist ok so.
Jetzt möchte ich nur die Datensätze aus diese Sicht V_tmpLagerartikel deren ArtikelGUID nicht in der Tabelle ArtikelLagerOrt sind.

Zur Erklärung: Von Artikel die bereits aufs Lager gebucht sind, steht die ArtikelGUID bereits in der Spalte ArtikelLagerOrt.ArtikelGUID.

Quasi: SELECT Material, Materialtext, Regal, Fach FROM V_tmpLagerartikel WHERE V_tmpLagerartikel.ArtikelGUID NOT IN ArtikelLagerOrt.ArtikelGUID

Die Syntax ist aber nicht richtig

Kann mir da jemand weiterhelfen?
Gruss
bejay
Titel: Re: Abfrageproblem MSSQL 2008
Beitrag von: Beaker s.a. am September 27, 2012, 22:32:31
Hallo bejay,
Ich denke, dass das doch diesem
http://www.donkarl.com?FAQ3.16 (http://www.donkarl.com?FAQ3.16)
entsprechen müsste, also
SELECT VLA.Material, VLA.Materialtext, VLA.Regal, VLA.Fach
FROM V_tmpLagerartikel AS VLA LEFT JOIN ArtikelLagerOrt AS ALO
ON VLA.ArtikelGUID = ALO.ArtikelGUID
WHERE ALO.ArtikelGUID Is Null

hth
gruss ekkehard
Titel: Re: Abfrageproblem MSSQL 2008
Beitrag von: bejay am September 28, 2012, 03:38:22
Das hat geholfen, das MMS macht daraus einen  LEFT OUTER JOIN und setzt die Prüfung auf Null in Klammern

Gruß
bejay