Учебное пособие Санкт-Петербург «бхв-петербург»



Pdf көрінісі
бет68/256
Дата18.11.2022
өлшемі1.88 Mb.
#465124
түріУчебное пособие
1   ...   64   65   66   67   68   69   70   71   ...   256
sql osnovi yazika

Глава 4. Типы данных СУБД PostgreSQL
32. Изучая приемы работы с массивами, можно, как и в других случаях, пользовать-
ся способностью команды SELECT обходиться без создания таблиц. Покажем
лишь два примера.
Для объединения (конкатенации) массивов служит функция array_cat:
SELECT array_cat( ARRAY[ 1, 2, 3 ], ARRAY[ 3, 5 ] );
array_cat
-------------
{1,2,3,3,5}
(1 строка)
Удалить из массива элементы, имеющие указанное значение, можно таким об-
разом:
SELECT array_remove( ARRAY[ 1, 2, 3 ], 3 );
array_remove
--------------
{1,2}
(1 строка)
Для работы с массивами предусмотрено много различных функций и операто-
ров, представленных в разделе документации 9.18 «Функции и операторы для
работы с массивами». Самостоятельно ознакомьтесь с ними, используя описан-
ную технологию работы с командой SELECT.
33.* В разделе документации 8.15 «Массивы» сказано, что массивы могут быть мно-
гомерными и в них могут содержаться значения любых типов. Давайте сначала
рассмотрим одномерные массивы текстовых значений.
Предположим, что пилоты авиакомпании имеют возможность высказывать
свои пожелания насчет конкретных блюд, из которых должен состоять их обед
во время полета. Для учета пожеланий пилотов необходимо модифицировать
таблицу pilots, с которой мы работали в разделе 4.5.
CREATE TABLE pilots
( pilot_name text,
schedule integer[],
meal text[]
);
90


Контрольные вопросы и задания
Добавим строки в таблицу:
INSERT INTO pilots
VALUES ( 'Ivan', '{ 1, 3, 5, 6, 7 }'::integer[],
'{ "сосиска", "макароны", "кофе" }'::text[]
),
( 'Petr', '{ 1, 2, 5, 7 }'::integer [],
'{ "котлета", "каша", "кофе" }'::text[]


Достарыңызбен бөлісу:
1   ...   64   65   66   67   68   69   70   71   ...   256




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет