SQL группируется внутри группы

#sql #sqlite #group-by #aggregate-functions

#sql #sqlite #группа-по #агрегатные функции

Вопрос:

Как мы можем использовать группировку по отдельным категориям? То есть рассматривайте каждую категорию как ее собственную группу, а затем группируйте по чему-то другому внутри категории.

Например, на этом изображении я хотел бы сгруппировать по кварталам только в пределах определенного ISSN.

примеры данных

Ожидаемый результат будет

ожидаемый результат

Комментарии:

1. СГРУППИРУЙТЕ как по ISSN, так и по кварталу. А как насчет разных лет?

2. пожалуйста, отметьте sql, который вы используете, т. е. sql server, mysql

Ответ №1:

Можно сгруппировать более чем по одному столбцу:

 select issn, quarter, count(*) from t group by issn, quarter  

Ответ №2:

Просто добавьте столбцы-в соответствии с приоритетами — для группировки по, например:

 SELECT * FROM MyTable GROUP BY ISSN, Quarter