Условия
Дана таблица users
с полями id
, group_id
.
CREATE TEMP TABLE users(id bigserial, group_id bigint);
INSERT INTO users(group_id) VALUES (1), (1), (1), (2), (1), (3);
В этой таблице, упорядоченной по id
необходимо:
-
выделить непрерывные группы по
group_id
с учётом указанного порядка записей (их 4); -
подсчитать количество записей в каждой группе;
-
вычислить минимальный
id
записи в группе.
Для таблицы:
id | group_id |
---|---|
1 | 1 |
2 | 1 |
3 | 1 |
4 | 2 |
5 | 1 |
6 | 3 |
Непрерывными группами можно считать:
group_id |
---|
1 |
2 |
1 |
3 |
Запрос должен выводить:
min_id | group_id | count |
---|---|---|
1 | 1 | 3 |
4 | 2 | 1 |
5 | 1 | 1 |
6 | 3 | 1 |