Jump to content

SQL abfrage leerer bestand


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben

Ich bin dabei eine SQL abfrage zu erstellen die mir eine Übersicht geben soll welcher Artikel überhaupt nicht mehr da ist. Das Problem dabei ist das es in mehreren Lager vorkommt (c.a. 80).

 

Die Tabelle besteht aus 2 Schlüssel (LagerNr und ArtNr) und eine der weiteren lautet bestand.    

  

Wenn ich jetzt eine abfrage mache mit „where bestand = '0'“ gibt er mir ja nur die vom jeweiligen Lager. Wie bekomme ich jetzt so hin dass er mir nur die anzeigt die auf allen Lager auf ‚0‘ steht?

 

Das ganze muss dann später mit einer zweiten Tabelle abgeglichen werden worin nur Artikel stehen mit einem Feld ob diese freigeschaltet sind oder nicht.

 

Das ganze geht darum um Artikel die nicht mehr da sind aus zu listen sodass diese nicht mehr bei Inventuren der entsprechenden Lager auftauchen.  

Geschrieben

Hmmm dann bekomme ich ein Fehler:

 

SQL Server Database Error: Ein Aggregat darf nicht in der WHERE-Klausel auftreten - es sei denn, es befindet sich in einer Unterabfrage, die in einer HAVING-Klausel oder einer Auswahlliste enthalten ist, und die Spalte, die aggregiert wird, ist ein Außenverweis.

 

Hier der Code

select ARTNR, Bezeichnung from dep_bes
where artnr < '40000000' and SUM(bestand) = 0
group by ARTNR
Geschrieben

Ja, danke :D

 

wieder ein neues Kommando gelernt.



Da habe ich jetzt noch ein kleines Problem gefunden. Sum macht ja eine summe, wenn aber jetzt einer +1 hat und einer -1 ist das auch null (ja ich Weiß -1 dürfte keiner haben, ist aber so). Wie bekomme ich das jetzt raus?

Geschrieben

Man kann viel machen. Voraussetzung ist aber immer eine saubere Datenbasis.

Die negativen Lagerbestände sind aber unsinnig und führen zu falschen Ergebnissen.

 

Wenn du z.B. für ArtNr 4711 in 5 Lagern einen Bestand von -1 hast, in einem 1 und Rest 0:

 

Du willst eine Übersicht haben, welche Artikel nicht da sind.Welche Erkenntnis kann du aus DIESEM Ergebnis gewinnen?? 

In dem Beispiel liefert

-SUM(bestand)   das Ergebnis -4

-SUM(ABS(bestand)) --> 6

 

Das richtige Ergebnis ist jedoch 1.. Oder?

Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...