PostgreSQL | Как добавить столбец с последовательной нумерацией для функции unnest()? — efim360.ru

PostgreSQL | Как добавить столбец с последовательной нумерацией для функции unnest()?

Представим, что у нас есть строка доменного имени и мы хотим получить из неё все записи, которые находятся между строчками:

SELECT * FROM unnest(string_to_array('http://www.worcestergold.org', '.'));
Получили один столбец таблицы с заголовком unnest как в названии функции - PostgreSQL
Получили один столбец таблицы с заголовком unnest как в названии функции — PostgreSQL

Но мы хотим получить не один столбец в таблице, а два. Второй должен содержать последовательную нумерацию частей после разделения строки на элементы массива.

 

Для этого нужно добавить выражение:

SELECT * FROM unnest(string_to_array('http://www.worcestergold.org', '.')) WITH ORDINALITY AS t(array_item, position);

После этого мы будем точно понимать какой порядковый номер у каждого элемента массива.

Добавили столбец с нумерацией результатов для функции unnest в PostgreSQL
Добавили столбец с нумерацией результатов для функции unnest в PostgreSQL

 

 

Информационные ссылки

Официальный сайт WEB-оболочки pgAdminhttps://www.pgadmin.org

Официальный сайт СУБД PostgreSQLhttps://www.postgresql.org

Команды SQLhttps://postgrespro.ru/docs/postgresql/15/sql-commands