Hilfe bei Abfrage

Hallo zusammen,

ich brauche Hilfe bei einer SQL Abfrage.

Ich habe folgende Tabellen:

custid | his | proj
6 |1 | 2
2 |1 | 2
3 |3 | 2
4 |3 | 2


custid | created
6 | 13.01.2008
2 | 18.04.2008
3 | 19.04.2008
4 | 20.04.2008

und möchte folgendes Ergebnis erhalten: Anzahl cust_id mit 2 benutzderdefinierten Bedingungen

proj 2/his 1 | proj 3/his 2 | gruppiert nach Quartal
1 | 0 | I
1 | 2 | II



im moment Frage ich das ganze mit sum(case when proj=2 and his = 1 usw) ab

und gruppiere dann nach Quartal…

da es sich aber um eine Komplexe Tabelle handelt dauert die Abfrage nach den unterschiedlichen Gruppen und Kriterien sehr lange

gibt es auch eine andere abfrage möglichkeit um wie angegeben zu gruppieren?

Du könntest evtl. die crosstab-Funktionen (contrib->tablefunc) dazu verwenden. Du könntest Dir auch das Explain anschauen, welchen Plan PG für Deine Abfrage wählt. Du könntest vielleicht auch die zu untersuchenden Zeilen mittels WHERE eingrenzen und dazu passende Indexe verwenden, falls das nicht schon der Fall ist.


Andreas