Jump to content
samsan

Aus Statistiktabelle mit Monatswerten View mit Monats- und Vorjahresmonatswerten erstellen

Recommended Posts

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

Share this post


Link to post
Share on other sites

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

Edited by DerFrank
Hinweis

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


Werbepartner:



×
×
  • Create New...