Oracle mengizinkan fungsi agregasi bersarang (lihat dokumentasi ).
Namun, ini membutuhkan GROUP BY . Jadi ini diperbolehkan:
SELECT MAX(AVG(SYSDATE - inv_date))
FROM invoice
GROUP BY Cust_ID;
Pada dasarnya, ini adalah jalan pintas untuk:
SELECT MAX(x)
FROM (SELECT AVG(SYSDATE - inv_date) as x
FROM invoice
GROUP BY Cust_Id
) i;
Namun, dalam kasus Anda, tidak ada GROUP BY . Oracle tidak mengizinkan GROUP BY bersarang tanpa GROUP BY .
Dan jika Anda penasaran, saya bukan penggemar fungsionalitas yang diperluas ini. Saya tidak melihat bahwa itu benar-benar menyelesaikan masalah.