Слишком плохо Oracle имеет такие ограничения. Конечно, результат для столбца, не входящего в GROUP BY, будет случайным, но иногда вы этого хотите. Глубокий Oracle, вы можете сделать это в MySQL / MSSQL.
НО есть работа для Oracle:
Пока следующая строка не работает
SELECT unique_id_col, COUNT(1) AS cnt FROM yourTable GROUP BY col_A;
Вы можете обмануть Oracle с некоторыми 0, как показано ниже, чтобы сохранить свой столбец в области видимости, но не группировать его (предполагая, что это числа, в противном случае использовать CONCAT)
SELECT MAX(unique_id_col) AS unique_id_col, COUNT(1) AS cnt
FROM yourTable GROUP BY col_A, (unique_id_col*0 + col_A);