Пример SQL-команды, которая выведет длину одномерного массива:
SELECT array_length(ARRAY[8,6,4], 1);
Функция array_length() принимает два параметра:
- Сам массив, по которому нужно вычислить длину
- Размерность массива
Если массив состоит только из идентификаторов целых чисел, то размерность выставляем на 1.
Другие примеры в зависимости от глубины массива и размерностей вложенных (глубинных) массивов
SELECT array_length(ARRAY[ARRAY[1,2], ARRAY[3,4]], 1); -- 2 SELECT array_length(ARRAY[ARRAY[1,2], ARRAY[3,4]], 2); -- 2 SELECT array_length(ARRAY[ARRAY[1,2], ARRAY[3,4]], 3); -- null SELECT array_length(ARRAY[ARRAY[1], ARRAY[3]], 1); -- 2 SELECT array_length(ARRAY[ARRAY[1], ARRAY[3]], 2); -- 1 SELECT array_length(ARRAY[ARRAY[1,2,3], ARRAY[3,4,5]], 3); -- null
Если говорить простыми словами, то размерность массива в PostgreSQL это длина вложенного массива на определённой глубине.
Информационные ссылки
Официальный сайт WEB-оболочки pgAdmin — https://www.pgadmin.org
Официальный сайт СУБД PostgreSQL — https://www.postgresql.org
Раздел «4.2.12. Конструкторы массивов» — https://postgrespro.ru/docs/postgresql/14/sql-expressions#SQL-SYNTAX-ARRAY-CONSTRUCTORS