Abfragen zusammenführen

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: Abfragen zusammenführen

Re: Abfragen zusammenführen

von ckoring » Fr, 20.05.2011 22:42

Danke DPunch!

So ähnlich hatte ich die Abfrage schon zusammen, ich wußte nur nicht wie ich das GROUP BY aus der Unterabfrage rausbekomme. Prima Problem gelöst!

cheers Christian

Re: Abfragen zusammenführen

von DPunch » Do, 19.05.2011 04:03

Aloha

Du meinst in etwa so?

Code: Alles auswählen

SELECT
	"KategorieName",
	SUM("TeilbelegSumme") AS "gesamt",
	(SELECT SUM("TeilbelegSumme") FROM "tmpTeilbelege" WHERE "KategorieName" = "a"."KategorieName" AND "KaeuferID" = 0) AS "Käufer0",
	(SELECT SUM("TeilbelegSumme") FROM "tmpTeilbelege" WHERE "KategorieName" = "a"."KategorieName" AND "KaeuferID" = 1) AS "Käufer1"
FROM "tmpTeilbelege" "a"
GROUP BY "KategorieName"

Re: Abfragen zusammenführen

von ckoring » Mi, 18.05.2011 20:32

Hallo komma4,

sorry, das waren wohl etwas zu wenig Informationen für eine Antwort die mir hilft.

Also, ich hab eine Tabelle mit einer Vielzahl von Einträgen und will mir über eine Abfrage daraus ein Übersicht erzeugen. Jeder Datensatz enthält unteranderem folgende Daten/Spalten:

Code: Alles auswählen

<...> | "KategorieName" | "TeilbelegSumme" | "KaeuferID" | <...>
Ich möchte nun eine Übersicht erzeugen die folgende Spalten enhält:

Code: Alles auswählen

1. "KategorieName"
2. Summe von "TeilbelegSumme" für jede Kategorie
3. Summe von "TeilbelegSumme" für jede Kategorie mit "KaeuferID"=0
4. Summe von "TeilbelegSumme" für jede Kategorie mit "KaeuferID"=1


Beispiel für das gewünschte Ergebnis:

Kategorie	        gesamt	Käufer0	Käufer1
------------------------------------------------
Werkzeug	          350       120       230
Verbrauchsmaterial   150        90        60
Rohmaterial          330       220       110
Dienstleistung       170        80        90

Wie bereits geschrieben bekomme ich das als einzelne Abfragen hin (z.B. KategorieName|KategorieSumme Käufer0), habe aber noch keinen funktionierenden Ansatz gefunden die Spalten 2,3,4,... in einer Abfrage zusammen zuführen. Mit dem Schlüsselwort UNION kann man wie ich meine nur Abfragen zeilenweise kombinieren, meine Versuche mit einer Unterabfrage im FROM-Abschnitt endeten im Wirrwarr oder mit Syntax-Fehlern.

So, ich hoffe dass jetzt genug Informationen auf Tisch liegen um mir zu helfen :D

cheer Christian

Re: Abfragen zusammenführen

von komma4 » Di, 17.05.2011 07:31

Willkommen im Forum.
ckoring hat geschrieben: wie ich das in EINE Abfrage bekomme ist mir allerdings weiter schleierhaft.

Der Sinn erschliesst sich mir nicht...

Hilft Dir das vielleicht weiter?

Code: Alles auswählen

SELECT "kundenid", SUM("zahlung") FROM "tab_kunde_zahlung" WHERE "kundenid" IN (1,2) GROUP BY "kundenid"

Abfragen zusammenführen

von ckoring » Mo, 16.05.2011 23:02

Hallo,

nach dem ich nun schon eine Weile nach einer Lösung gesucht habe und bisher eher erfolglos war, nun mein Versuch etwas Hilfestellung von den Experten zu bekommen.

Ich möchte eine Abfrage aus drei Teilen zusammenstellen, einzeln für sich klappt das auch wie gedacht, wie ich das in EINE Abfrage bekomme ist mir allerdings weiter schleierhaft. Hier die drei Abfragen:

Code: Alles auswählen

SELECT "KategorieName", SUM( "TeilbelegSumme" )
FROM "tmpTeilbelege"
GROUP BY "KategorieName"


SELECT "KategorieName", SUM( "TeilbelegSumme" )
FROM "tmpTeilbelege"
WHERE "KaeuferID" = 0
GROUP BY "KategorieName"


SELECT "KategorieName", SUM( "TeilbelegSumme" )
FROM "tmpTeilbelege"
WHERE "KaeuferID" = 1
GROUP BY "KategorieName"
Wie man sieht unterscheidet sich die Abfragebn nur durch die WHERE-Bedingung. Wäre dankbar für jeden Hinweis wie ich diese drei Abfragen zu einer zusammenführen kann.

schönen Abend noch
Christian

Nach oben