Разница между array и unnest в PostgreSQL заключается в их назначении:
- array позволяет определять столбцы таблицы как многомерные массивы переменной длины. builtin.com С его помощью можно создавать массивы любого встроенного или определённого пользователем базового типа, типа перечисления, составного типа, типа диапазона или домена. builtin.com
- unnest преобразует указанный массив в коллекцию строк. www.sqliz.com Функция unnest создаёт одну строку для каждого элемента в соответствующем массиве исходной строки. builtin.com
Таким образом, array используется для определения и работы с массивами, а unnest — для преобразования их в серию строк. dev.to Например, с помощью unnest можно обработать содержимое массива как будто это ещё одно отношение. tapoueh.org