Datum aus 2 Tabellen

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Datum aus 2 Tabellen

Re: Datum aus 2 Tabellen

von RobertG » Mo, 24.04.2017 21:21

Hallo Evi,

zwei Lösungsmöglichkeiten sehe ich:
1. Die einfache, bei der Du etwas Hand anlegen musst: Eine weitere Tabelle erstellen, in der alle Monate verzeichnet sind und diese mit einbinden - als erste Tabelle in dem Join-Verbund.
2. Die Allroundlösung, direkt mit der Ausgangstabelle:

Code: Alles auswählen

SELECT "a".*, 
(SELECT SUM("Betrag") FROM "Tabelle" WHERE MONTH("Datum") = MONTH("a"."Datum") AND YEAR("Datum") = YEAR("a"."Datum")) AS "monatl_Summe" 
FROM "Tabelle" AS "a"
Ausgangspunkt ist Deine Ursprungstabelle, von der ich natürlich den Namen und die Feldbezeichnungen nicht weiß. Hat also nichts mit Deinen Ansichten zu tun. In dieser Tabelle ist ein Feld "Datum" enthalten, aus der Monat und Jahr bestimmt werden können. Außerdem ist ein Feld "Betrag" enthalten, das summiert werden kann. Die Unterabfrage erstellt jetzt in jedem Datensatz die Summe, die zu dem Monat und Jahr des äußeren Datensatzes passt. Die Verbindung zum äußeren Datensatz ist darüber gewährleistet, dass "Tabelle" der Alias "a" zugewiesen wurde. Das ganze ist eine korrelierende Unterabfrage. Schau Dir gegebenenfalls dazu das Handbuch, Kapitel Abfragen, an.

Gruß

Robert

Re: Datum aus 2 Tabellen

von RobertG » Mo, 24.04.2017 16:04

Hallo Evi,

Code: Alles auswählen

SELECT "Einnamen_Monat.Jahr"."Monat", "Einnamen_Monat.Jahr"."Einnamen", "Ausgaben_Monat_Jahr"."Ausgaben" FROM "Einnamen_Monat.Jahr", "Ausgaben_Monat_Jahr" WHERE "Einnamen_Monat.Jahr"."Monat" = "Ausgaben_Monat_Jahr"."Monat" 
Das setzt voraus, dass Du in jedem Monat sowohl Einnahmen als auch Ausgaben hast. Der folgende Code würde auch Monate mit Einnahmen anzeigen, in denen noch keine Ausgaben getätigt wurden:

Code: Alles auswählen

SELECT "Einnamen_Monat.Jahr"."Monat", "Einnamen_Monat.Jahr"."Einnamen", "Ausgaben_Monat_Jahr"."Ausgaben" FROM "Einnamen_Monat.Jahr" LEFT JOIN "Ausgaben_Monat_Jahr" ON "Einnamen_Monat.Jahr"."Monat" = "Ausgaben_Monat_Jahr"."Monat" 
Gruß

Robert

Nach oben