Oracle AI Database added the FILTER clause for aggregates in 23.26.1
Syntax:
fn ( ... ) FILTER ( WHERE ... )
Example:
SELECT
u.buyer_id
, to
char(u.joindate, 'yyyy-mm-dd') join_date
, count(o.order
id) FILTER (WHERE tochar(o.order
date, 'yyyy') = '2019') ordersin_2019
FROM
users
LEFT JOIN orders using (buyer_id)
GROUP BY all
;
Read more:
https://www.oralenoir.com/conditional-filter-for-aggregates-in-oracle-database-26ai/