Учебно-практическое пособие москва 2017 ббк


SELECT array_remove( ARRAY[ 1, 2, 3 ], 3 )



Pdf көрінісі
бет63/243
Дата21.07.2022
өлшемі3,05 Mb.
#147663
түріУчебно-практическое пособие
1   ...   59   60   61   62   63   64   65   66   ...   243
Байланысты:
Язык SQL. Базовый курс

SELECT array_remove( ARRAY[ 1, 2, 3 ], 3 );
array_remove
--------------
{1,2}
(1 строка)
67


Для работы с массивами предусмотрено много различных функций и операто-
ров, представленных в разделе документации 9.18 «Функции и операторы для
работы с массивами». Самостоятельно ознакомьтесь с ними, используя описан-
ную технологию работы с командой SELECT.
33.* В разделе документации 8.15 «Массивы» сказано, что массивы могут быть мно-
гомерными и в них могут содержаться значения любых типов. Давайте сначала
рассмотрим одномерные массивы
текстовых
значений.
Предположим, что пилоты авиакомпании имеют возможность высказывать
свои пожелания насчет конкретных блюд, из которых должен состоять их обед
во время полета. Для учета пожеланий пилотов необходимо модифицировать
таблицу pilots, с которой мы работали в разделе 4.5.
CREATE TABLE pilots
( pilot_name text,
schedule integer[],
meal text[]
);
Добавим строки в таблицу:
INSERT INTO pilots
VALUES ( 'Ivan', '{ 1, 3, 5, 6, 7 }'::integer[],
'{ "сосиска", "макароны", "кофе" }'::text[] ),
( 'Petr', '{ 1, 2, 5, 7 }'::integer [],
'{ "котлета", "каша", "кофе" }'::text[] ),
( 'Pavel', '{ 2, 5 }'::integer[],
'{ "сосиска", "каша", "кофе" }'::text[] ),
( 'Boris', '{ 3, 5, 6 }'::integer[],
'{ "котлета", "каша", "чай" }'::text[] );
INSERT 0 4
Обратите внимание, что каждое из текстовых значений, включаемых в литерал
массива, заключается в двойные кавычки, а в качестве типа данных указывается
text[].
Вот что получилось:
SELECT * FROM pilots;
pilot_name | schedule
|
meal
------------+-------------+-------------------------
Ivan
| {1,3,5,6,7} | {сосиска,макароны,кофе}
Petr
| {1,2,5,7}
| {котлета,каша,кофе}
Pavel
| {2,5}
| {сосиска,каша,кофе}
Boris
| {3,5,6}
| {котлета,каша,чай}
(4 строки)
Давайте получим список пилотов, предпочитающих на обед сосиски:


Достарыңызбен бөлісу:
1   ...   59   60   61   62   63   64   65   66   ...   243




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

    Басты бет