Hallo,
ich würde mir gerne aus einer Tabelle 'Lagerbestände', alle Lagerorte ausgeben auf denen unterschiedliche Artikel liegen und die Anzahl der unterschiedlichen Artikel mit angeben.
Das Problem hierbei ist, dass es zu einem Artikel auf einem Lagerort zwei Datensätze geben kann, dies liegt an der eingesetzten Software welche die DB verwaltet und hier hab ich keinen Einfluss drauf.
Beispiel:
Lager | Artikel | Menge
C1A | 62005 |20
C1A | 62005 |2
Weiß vielleicht einer wie ich dies hinbekommen könnte?
Hier meine Tabellen:
Tabelle Lagerbestände (ID, Lagerid, ArtikelID, Artikelnummer, Artikelbezeichnung, Menge)
Tabelle Lager ( ID, Bezeichnung, LaggergruppenID, ...)
Die Tabelle Lager wird lediglich benötigt um die Bezeichnung des Lagers angeben zu können.
Mein Versuch:
SELECT DISTINCT B.Lagerid, L.Bezeichnung, B.Artikelnummer
FROM
lagerbestaende B
INNER JOIN
Lager L
ON
B.Lagerid = L.ID
WHERE
B.Menge > 0
GROUP BY B.Lagerid, L.Bezeichnung, B.Artikelnummer
HAVING COUNT (*)>1
ORDER BY
l.bezeichnung
Hier werden mir aber auch Läger angezeigt die keine unterschiedlichen Artikel haben, da die Problematik besteht das auf einem Lagerort ein Artikel auch zwei Datensätze beinhalten kann.
Ich bräuchte in etwa eine Funktion wie HAVING COUNT (DISTINCT B.Lagerid, B.Artikelnummer)>1 => Doch hier kann leider nur eine Spalte mitgegeben werden.
Leider hab ich beim Suchen keine Lösung gefunden.
Bin für jede Gedankenstütze dankbar
ich würde mir gerne aus einer Tabelle 'Lagerbestände', alle Lagerorte ausgeben auf denen unterschiedliche Artikel liegen und die Anzahl der unterschiedlichen Artikel mit angeben.
Das Problem hierbei ist, dass es zu einem Artikel auf einem Lagerort zwei Datensätze geben kann, dies liegt an der eingesetzten Software welche die DB verwaltet und hier hab ich keinen Einfluss drauf.
Beispiel:
Lager | Artikel | Menge
C1A | 62005 |20
C1A | 62005 |2
Weiß vielleicht einer wie ich dies hinbekommen könnte?
Hier meine Tabellen:
Tabelle Lagerbestände (ID, Lagerid, ArtikelID, Artikelnummer, Artikelbezeichnung, Menge)
Tabelle Lager ( ID, Bezeichnung, LaggergruppenID, ...)
Die Tabelle Lager wird lediglich benötigt um die Bezeichnung des Lagers angeben zu können.
Mein Versuch:
SELECT DISTINCT B.Lagerid, L.Bezeichnung, B.Artikelnummer
FROM
lagerbestaende B
INNER JOIN
Lager L
ON
B.Lagerid = L.ID
WHERE
B.Menge > 0
GROUP BY B.Lagerid, L.Bezeichnung, B.Artikelnummer
HAVING COUNT (*)>1
ORDER BY
l.bezeichnung
Hier werden mir aber auch Läger angezeigt die keine unterschiedlichen Artikel haben, da die Problematik besteht das auf einem Lagerort ein Artikel auch zwei Datensätze beinhalten kann.
Ich bräuchte in etwa eine Funktion wie HAVING COUNT (DISTINCT B.Lagerid, B.Artikelnummer)>1 => Doch hier kann leider nur eine Spalte mitgegeben werden.
Leider hab ich beim Suchen keine Lösung gefunden.
Bin für jede Gedankenstütze dankbar
