Gelöst: SQL: Saldo über zwei Tabellen ?

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

WSO
*****
Beiträge: 233
Registriert: Di, 22.04.2014 13:03

Gelöst: SQL: Saldo über zwei Tabellen ?

Beitrag von WSO »

Ich habe zwei Tabellen (Faktura, Zahlung) die jeweils die Kunden-ID und einen Betrag enthalten.
Hierauf liegt jeweils eine view mit Group auf "Kunden-ID" und Summe über "Betrag".
Es kann dabei Zahlungen ohne Faktura und Faktura ohne Zahlungen geben.

Code: Alles auswählen

SELECT "zah_kud_id", SUM( "zah_betrag" ) AS "SumZE" FROM "tZahlung" GROUP BY "zah_kud_id"

Code: Alles auswählen

SELECT "rec_id", SUM( "rec_betrag" ) AS "SumRE" FROM "tRechnung" GROUP BY "rec_id"
Jetzt möchte ich per SQL den Gesamtsaldo pro Kunden-ID bilden.
Mir fehlt die zündende Idee das mit SQL zu formulieren.
Hat jemand ne Idee?

Danke im voraus,
Wolfram
Zuletzt geändert von WSO am Mo, 21.07.2014 22:07, insgesamt 1-mal geändert.
RobertG
********
Beiträge: 2067
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: SQL: Saldo über zwei Tabellen ?

Beitrag von RobertG »

Hallo Wolfram,

die vorgesehenen beiden Abfragen geben dieses Verknüpfungsmoment leider so nicht her. Es fehlt in der zweiten Abfrage irgendein Hinweis auf die Kunden_ID.
Prinzipiell gehen solche Verfahren mit Hilfe von korrelierenden Unterabfragen. Einmal angenommen, dass Du ein eine Kunden_ID in beiden Tabellen hast sieht das dann folgendermaßen aus:

Code: Alles auswählen

SELECT "rec_id", "Kunden_ID", (SELECT SUM( "rec_betrag" ) FROM "tRechnung" WHERE "rec_ID" = "a"."rec_ID" AND "Kunden_ID" = "a"."Kunden_ID") AS "SumRE", (SELECT SUM( "zah_betrag" ) FROM "tZahlung" WHERE "zah_kud_id" = "a"."Kunden_ID")  AS "SumZE" FROM "tRechnung" AS "a"
Ob in der zweiten Unterabfrage noch die "rec_ID" vorkommt kann ich mangels Kenntnis der Tabellen nicht sagen.
Siehe zu den korrelierten Unterabfragen das Handbuch 4.2 S. 197f sowie am Beispiel eines laufenden Kontostandes mit Kategorien auf S. 274f.

Gruß

Robert
WSO
*****
Beiträge: 233
Registriert: Di, 22.04.2014 13:03

Re: SQL: Saldo über zwei Tabellen ?

Beitrag von WSO »

Super, das hätte ich so nicht rausgefunden.
Funktioniert klasse.
Danke,
Wolfram
Antworten