Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.09.2022, 01:38   #1
polin11
Форумчанин
 
Регистрация: 07.06.2015
Сообщений: 164
По умолчанию Удалить из массива элементы

Использую СУБД Postgresql.
Есть таблица вида:

Код:
CREATE TABLE docs (
   id int PRIMARY KEY,
   account bigint,
   contact TEXT []
);
INSERT INTO docs VALUES(1, 22, ARRAY ['Иван', 'Петр']);
INSERT INTO docs VALUES(2, 22, ARRAY ['Иван']);
INSERT INTO docs VALUES(3, 22, ARRAY['Иван', 'Виктор']);
INSERT INTO docs values(4, 22, ARRAY['Иван', 'Роман', 'Сергей']);
https://www.db-fiddle.com/f/p4... ck3ws8tJ/0

Есть массив строк контактов(например ['Иван','Петр']) и аккаунт, нужно из поля contact удалить
этих пользователей. Если после этого массив пустой, то нужно удалить запись целиком.
Например из набора:
Код:
1, 22, ARRAY ['Иван','Петр']
2, 22, ARRAY ['Иван']
3, 22, ARRAY['Иван', 'Виктор']
4, 22, ARRAY['Иван', 'Роман', 'Сергей']
После обновления таблица должна иметь вида:
Код:
3, 22, ARRAY['Виктор']
4, 22, ARRAY['Роман', 'Сергей']
Просьба помочь это сделать одним запросом
polin11 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удалить элементы массива flu3xz Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 26.05.2017 13:29
Фортран. Удалить из массива нулевые элементы, передвинув на их место следующие элементы без нарушения порядка.. katya2.5 Помощь студентам 0 27.12.2013 21:01
Удалить элементы массива. Маx Паскаль, Turbo Pascal, PascalABC.NET 7 24.09.2012 04:47
По массивам, SOS! из целочисленного массива удалить из массива элементы, встречающиеся менее 3-х раз prelest' Паскаль, Turbo Pascal, PascalABC.NET 1 23.05.2011 22:37
Удалить элементы массива Маськ@ Паскаль, Turbo Pascal, PascalABC.NET 1 21.12.2008 17:46