Group by -Klausel

Angins

Mitglied
Ich habe folgende Abfrage, die ich durchführen möchte:
Code:
Select to_char(datumbuchung, 'MONTH YYYY'), bu_id 
from buchung 
group by to_char(datumbuchung, 'MONTH YYYY')
order by bu_id desc;
Jedoch geht diese nicht, es zeigt einen Fehler an. Irgendwie
geht es nicht mehrere Spalten anzuzeigen, aber nur nach einer
Spalte zu gruppieren.
Weiss jemand wie ich das auf eine andere Weise anstellen kann?

Danke & Gruss
Angins



 
Hast du es schon auf dieser Weise versucht?

Code:
Select to_char(datumbuchung, 'MONTH YYYY'), bu_id 
from buchung 
group by to_char(datumbuchung, 'MONTH YYYY'), bu_id
order by bu_id desc;
 
Das habe ich auch schon versucht.
Es gibt dann wirklich keine Fehlermeldung mehr, jedoch
gruppiert es dann nicht wirklich nach to_char(datumbuchung, 'MONTH YYYY').
Ergibt also eine andere Lösung, als wenn ich einfach bu_id und das order by weglasse.
 
Wenn deine Tabelle z.B. so aussieht:

datumbuchung | bu_id
13.01.04 | 1
25.02.04 | 2
25.02.04 | 3
29.05.04 | 4
29.05.04 | 5

Was sollte dann bei dir als Ergebnis deiner SQL-Abfrage rauskommen? Wenn du Datensätze anhand des buchungsdatum gruppierst(d.h. zusammenfasst), dann kannst du nicht mehr auf die bu_id zugreifen, weil z.B. am 25.02.04 es mehrere Möglichkeiten für bu_id geben würde.
 
Eigentlich will ich schlussendlich nur das hier haben:

MAI 2004
FEBRUAR 2004
JANUAR 2004

Es ist mir nun klar, das ich so aber nicht noch sortieren kann mit der mu_id.
Jedoch möchte ich eigentlich sowieso nach Monat sortieren. Doch das habe ich
auch nicht geschafft.
Es geht nicht: order by to_char(datumbuchung, 'MONTH YYYY')
anzuwenden. Dann gibt es immer eine Fehlermeldung.
 
Das sollte aber schon funktionieren. Was für eine Fehlermeldung kommt denn nach dem folgenden SQL-Statement ? (Wenn ich das richtig verstanden habe hast du das so schon probiert)
Code:
Select to_char(datumbuchung, 'MONTH YYYY')
from buchung 
group by to_char(datumbuchung, 'MONTH YYYY')
order by to_char(datumbuchung, 'MONTH YYYY');
 
Da sehe ich gerade, dass im vorherigen Beitrag alphabetisch sorteriert werden würde und nicht nach dem Datum. Um dazu noch nach dem Datum kannst du z.B. eine Unterabfrage wie folgt machen:

Code:
select datum 
from 
  (select to_char(datumbuchung, 'MONTH YYYY') datum 
   from buchung
   group by  to_char(datumbuchung, 'MONTH YYYY')
  ) 
order by to_date(datum, 'MONTH YYYY');
 
Zurück