Moin moin,
ich habe jetzt schon eine Weile im Internet gesucht und bin leider nicht fündig geworden icon_frown.gif
Mein Problem ist, dass ich eine Abfrage (aus einer Abfrage) machen möchte.
Die Abfrage/Tabelle sieht bislang in etwa so aus:
User__|AdminKz| Datum
User1 | X |01.04.2013
User1 | X |10.07.2012
User1 | X |01.01.2008
User2 | X |01.04.2013
User2 | X |07.06.2001
usw... | usw... |usw...
Abfrage bislang ist:
**SELECT DISTINCT usertable.user, usertable.oakz, usertable.admin_kz, table2.datum
FROM usertable
JOIN table3 ON usertable.user = UPPER(table3.freigabe)
JOIN table2 ON table2.mbeln = table3.belnr
WHERE table2.bedat > to_date('27.08.2012','DD.MM.YYYY')
AND UPPER(table3.freigabe) = usertable.user
ORDER BY user ASC, datum DESC**
Das ganze ist eine Oracle-Datenbank.
Was ich möchte ist, dass die User zusammengefasst werden und nur das oberste (aktuellste) Datum stehen bleibt.
Folgendes habe ich auch schon erfolglos probiert:
**SELECT usertable.user, usertable.oakz, usertable.admin_kz, MAX(table2.datum)
FROM usertable
JOIN table3 ON usertable.user = UPPER(table3.freigabe)
JOIN table2 ON table2.mbeln = table3.belnr
WHERE table2.bedat > to_date('27.08.2012','DD.MM.YYYY')
AND UPPER(table3.freigabe) = usertable.user
GROUP BY user, oakz, admin_kz
ORDER BY user ASC, datum DESC**
Oracle-Fehler:
[Error Code: 979, SQL State: 42000] ORA-00979: kein GROUP BY-Ausdruck
Kann mir jemand helfen?
MfG