Zwei Tabellen zusammenführen - nicht UNION

Tja, das ist eines der Probleme: heile Theorie und harte Wirklichkeit.
Die beiden haben Ihr Geld erst mit einem Monat Verspätung erhalten.
Die beiden durften einen Monat in froher Erwartung hoffen.
 
Werbung:
Tja, das ist eines der Probleme: heile Theorie und harte Wirklichkeit.
Theorie ist also, dass sich aus den Beispieldatensätzen das von dir gewünschte Ergebnis aus dem Beispielbild formen lässt. Harte Wirklichkeit ist dagegen, dass die Beispieldaten das aus logischer Sicht nicht zulassen.

Ich denke ich habe einen Ansatz, den ich aber nicht verifizieren kann weil entweder Daten oder Bild Fehler enthalten.
 
So, da bin ich wieder - einige Tage ausgefallen.

Damit es übersichtlicher ist, habe ich alles noch einmal in eine Tabelle eingetragen und einen Screenshot gemacht.


(Wirklich schade, dass man hier keine Tabelle erstellen kann, also
fehlt.)

Vielleicht ist das Bild verständlicher.

Gruß
Wolf-Tilmann
 

Anhänge

  • PLAN_Ist_Vergleich.PNG
    PLAN_Ist_Vergleich.PNG
    68,8 KB · Aufrufe: 9
Ich denk ich hab verstanden was du willst. Hier mal mein Denkansatz:
Code:
WITH RECURSIVE Monatstabelle (namegp, monat, ende, betrag)
AS (
SELECT namegp, beginn AS monat, ende, betrag
FROM plandaten
UNION ALL
SELECT namegp, date(monat,'+1 month'), ende, betrag
FROM  Monatstabelle
WHERE monat < date(ende,'-1 month')
),
data1 AS (
SELECT *
FROM Monatstabelle AS M
LEFT JOIN istdaten AS I
ON M.namegp = I.namegp
AND M.monat = I.periode
),
data2 AS (
SELECT *
FROM istdaten AS I
LEFT JOIN Monatstabelle AS M
ON I.namegp = M.namegp
AND I.periode = M.monat
WHERE M.namegp IS NULL
)
SELECT * FROM data1;

Das ist natürlich noch nicht fertig. Den Rest überlasse ich dir als Übungsaufgabe.

Gruß
Hony
 
Werbung:
Zurück
Oben