Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Funções agregadas aninhadas


A Oracle permite funções de agregação aninhadas (consulte a documentação ).

No entanto, requer um GROUP BY . Então isso é permitido:
SELECT MAX(AVG(SYSDATE - inv_date))
FROM invoice
GROUP BY Cust_ID;

Basicamente, este é um atalho para:
SELECT MAX(x)
FROM (SELECT AVG(SYSDATE - inv_date) as x
      FROM invoice
       GROUP BY Cust_Id
     ) i;

No seu caso, porém, não há GROUP BY . Oracle não permite GROUP BY aninhado sem o GROUP BY .

E se você estiver curioso, não sou fã dessa funcionalidade estendida. Não vejo que isso realmente resolva um problema.