Jump to content

Aus Statistiktabelle mit Monatswerten View mit Monats- und Vorjahresmonatswerten erstellen


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

Empfohlene Beiträge

Hallo zusammen,

 

ich habe eine Statistiktabelle aus einem ERP mit - vereinfacht - den Spalten Monat (im Format JJJJMM) / Artikelnr. / Umsatz.

 

Ziel ist, über eine ODBC-Abfrage aus Excel auf einen View eine Tabelle auszugeben mit den Spalten Artikelnr. / Umsatz aktueller Monat / Umsatz Vorjahresmonat. Aktueller und Vorjahresmonat sollen in Excel als Parameter für die Abfrage festgelegt werden. Es sollen natürlich auch Artikel ausgegeben werden, die nur in einem der beiden Monate einen Umsatz haben.

 

Ich habe zwei Views erstellt, einen für Daten aktueller Monat, einer für Daten Vormonat. Diese joine ich in einem dritten View. Das Problem ist aber, dass in der Statistiktabelle für Monate, in denen der Artikel keinen Umsatz hatte, auch kein Datensatz vorhanden ist. Frage ich in dem kombinierten View aktuellen und Vorjahresmonat mit AND ab, bekomme ich also nur Artikel, die in beiden Monaten einen Umsatz hatten. Frage ich mit OR ab, bekomme ich zwar Artikel, die nur in einem der beiden Monaten einen Umsatz hatten, Artikel die in beiden Monaten einen Umsatz haben, bekomme ich dann aber doppelt.

 

Ich komme leider auf keine Lösung und hoffe, dass mir hier jemand weiterhelfen kann.

 

Besten Dank!

 

Stefan

Link zu diesem Kommentar

Wie hast du die views miteinander verjoint?

Denke du hast ein inner join verwendet und daher funzt es nicht. 

 du musst die view Monat mit der view Vormonat mit left join verbinden. 

Bspw.

 

Select M.Artikel,  M.Monat, M.Umsatz, 

V.artikel, v.monat, v.umsatz

from Monat m left join Vormonat v on

m.artikel = v.artikel

where m.monat is null

 

glaube so sieht die sql Anweisung aus. 

Du kannst damit auch gleich im Select eine case Anweisung einbauen, die dann  gleich den NULL Datensatz mit V.Monat überschreibt. 

 

Versuch es mal damit 

 

vg

DerFrank

bearbeitet von DerFrank
Hinweis
Link zu diesem Kommentar

Hallo Frank,

 

Danke Dir. Das Problem ist, dass ich keine NULL-Werte habe, sondern überhaupt keinen Datensatz, wenn kein Umsatz vorhanden.

 

Habe da heute wieder länger rumgebastelt. Im Moment stehe ich an diesem Punkt in der kombinierten Abfrage:

 

SELECT     COAkt.PRODNR, COAkt.UMSAJ, COVj.UMSVJ, COAkt.AKTJ, COVj.VORJ

FROM         COAkt LEFT OUTER JOIN

                      COVj ON COAkt.PRODNR = COVj.PRODNR

WHERE     (COAkt.AKTJ = '201901') AND (COVj.VORJ = '201801') OR

                      (COAkt.AKTJ = '201901') AND (COVj.VORJ = 'Datensatz 201801 gibt es nicht')

 

Wobei der rot markierte das Problem ist.

 

Grüße

 

Stefan

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

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...