SQLсервер в Linux -самостоятельное освоение пакета
4b61df3a

Функция array_dims()



Листинг 7.25. Функция array_dims()

booktown=# SELECT array_dims(books) FROM favorite_books;

array_dims

[1:1]

[1:2]

(2 rows)

Обновление данных в полях-массивах

Существует три варианта модификации данных в полях-массивах.

  • Полная модификация. Все содержимое массива заменяется новыми данными, заданными в виде массива-константы.
  • Модификация среза. Срез (то есть интервальное подмножество элементов) заменяется новыми данными, заданными в виде массива-константы. Количествоэлементов в константе должно соответствовать количеству элементов в обновляемом срезе.
  • Модификация элемента. Отдельный элемент массива заменяется новой константой, относящейся к базовому типу данных массива. Элемент задается индексом. В первом случае количество элементов в новом массиве может не совпадать с количеством элементов в существующем массиве. Допустим, работник с кодом 1d=102 хочет добавить данные о новой книге в список, хранящийся в таблице favorite_books. Команда UPDATE, приведенная в листинге 7.26, заменяет все текущее содержимое массива.


Содержание раздела