Oracle staat geneste aggregatiefuncties toe (zie de documentatie ).
Het vereist echter een GROUP BY
. Dus dit is toegestaan:
SELECT MAX(AVG(SYSDATE - inv_date))
FROM invoice
GROUP BY Cust_ID;
Dit is in feite een kortere weg voor:
SELECT MAX(x)
FROM (SELECT AVG(SYSDATE - inv_date) as x
FROM invoice
GROUP BY Cust_Id
) i;
In jouw geval is er echter geen GROUP BY
. Oracle staat geen geneste GROUP BY
toe zonder de GROUP BY
.
En mocht je nieuwsgierig zijn, ik ben geen fan van deze uitgebreide functionaliteit. Ik zie niet dat het echt een probleem oplost.