Использование PostgreSQL 9.0.
Скажем, у меня есть таблица, содержащая поля: company
, profession
и year
. Я хочу вернуть результат, который содержит уникальные компании и профессии, но агрегаты (в массив в порядке) годы основаны на числовой последовательности:
Пример таблицы:
+-----------------------------+
| company | profession | year |
+---------+------------+------+
| Google | Programmer | 2000 |
| Google | Sales | 2000 |
| Google | Sales | 2001 |
| Google | Sales | 2002 |
| Google | Sales | 2004 |
| Mozilla | Sales | 2002 |
+-----------------------------+
Мне интересен запрос, который выводит строки, похожие на следующие:
+-----------------------------------------+
| company | profession | year |
+---------+------------+------------------+
| Google | Programmer | [2000] |
| Google | Sales | [2000,2001,2002] |
| Google | Sales | [2004] |
| Mozilla | Sales | [2002] |
+-----------------------------------------+
Существенная особенность заключается в том, что только последовательные годы должны быть сгруппированы вместе.