Zwei SQL-Abfragen in einer Tabelle "verknüpfen" und "Umweg" über Excel vermeiden

MichiMüller

Neuer Benutzer
Beiträge
1
Hallo zusammen,

ich habe hier eine Abfrage die ich öfters mal für Auswertungen benötige und aktuell etwas umständlich ist:

Als erstes führe ich folgende Abfrage durch und exportiere das Ergebnis ins Excel:

SELECT Artikel, Auftrag
FROM Lagerbewegung
WHERE Artikel like 'A_D.....%'
AND Art = 'P'
AND Ort = 0
AND EXTRACT(YEAR FROM DATUM) = 2021

Diese Excel-Tabelle hat nun zwei Spalten welche ich um eine dritte erweitere mit dem Inhalt "JA" für einen späteren SVERWEIS


Nun führe ich eine zweite Abfrage in der gleichen Tabelle durch und exportiere das Ergebnis wieder ins Excel:

SELECT Artikel, Auftrag, Menge
FROM Lagerbewegung
WHERE Art = 'F'
AND Ort = 0
AND EXTRACT(YEAR FROM DATUM) = 2021

Diese Excel-Tabelle hat nun drei Spalten und in der vierten Spalte mache ich einen SVERWEIS auf die erste Tabelle wo nach "Auftrag" gesucht wird und dann #NV oder "JA" zurück gegeben wird. Die Zeilen mit "JA" summiere ich nun die Menge.

Leider kenne ich keine Möglichkeit zwei Abfragen in einer Tabelle vorzunehmen und nur die betroffenen Werte zu summieren. Evtl. kann mir hier jemand helfen.

Besten Dank und Viele Grüße
 
Werbung:

ukulele

Datenbank-Guru
Beiträge
4.690
Dein jetziges Vorgehen entspricht im wesentlichen dem hier:
Code:
WITH t AS (
SELECT    Artikel,
        Auftrag,
        datepart(year,DATUM) AS Jahr
FROM    Lagerbewegung
WHERE    Artikel LIKE 'A_D.....%'
AND        Art = 'P'
AND        Ort = 0
)
SELECT    l.Artikel,
        l.Auftrag,
        l.Menge,
        (CASE WHEN t.Artikel IS NOT NULL THEN l.Menge ELSE NULL END) AS Menge_t
FROM    Lagerbewegung l
LEFT JOIN t
ON        l.Auftrag = t.Auftrag
AND        datepart(year,l.DATUM) = t.Jahr
WHERE    l.Art = 'F'
AND        l.Ort = 0
AND        datepart(year,l.DATUM) = 2021
Wobei ich jetzt nicht weiß ob man das so direkt in Excel knüppeln kann.

Die Zusammenhänge erschließen sich mir nur bedingt daher ist das eventuell nicht ganz optimal, wirkt jedenfalls nicht rund. Die Spalte Menge_t sollte dir aber nur die gewünschten Werte liefern und die kannst du dann summieren.
 
Werbung:

ukulele

Datenbank-Guru
Beiträge
4.690
Kann sein das Excel ein Problem mit dem WITH hat, i.d.R. hinterlegt man ja die ganze Abfrage. Man kann das natürlich als Sicht anlegen etc. aber das ist vielleicht nicht jedem gleich klar.
 
Oben