Я могу запустить это в mysql без проблем
SELECT
DATE_FORMAT(trans_date, '%Y-%m') month,
COUNTRY, COALESCE(COUNT(*), 0) trans_count,
COALESCE(SUM(CASE WHEN state ='approved' THEN 1 END), 0) approved_count,
COALESCE(SUM(amount), 0) trans_total_amount,
COALESCE(SUM(CASE WHEN state ='approved' THEN amount END), 0) approved_total_amount
FROM
Transactions
GROUP BY
month, COUNTRY
ORDER BY
month;
, но тот же запрос не выполняется в Orcale, я не могу использовать GROUP BY
с использованием псевдонима агрегации, и я могу ' Агрегирование без использования GROUP BY
.
Я могу вызвать подзапрос над подзапросом или использовать CTE, но это так утомительно.
Что такое хороший запрос для типа проблемы?