Oracle позволява вложени функции за агрегиране (вижте документацията ).
Той обаче изисква GROUP BY
. Така че това е позволено:
SELECT MAX(AVG(SYSDATE - inv_date))
FROM invoice
GROUP BY Cust_ID;
По принцип това е пряк път за:
SELECT MAX(x)
FROM (SELECT AVG(SYSDATE - inv_date) as x
FROM invoice
GROUP BY Cust_Id
) i;
Във вашия случай обаче няма GROUP BY
. Oracle не позволява вложени GROUP BY
без GROUP BY
.
И ако сте любопитни, аз не съм фен на тази разширена функционалност. Не виждам, че всъщност решава проблем.