|
Модераторы: LSD |
|
polin11 |
|
||||||
Шустрый Профиль Группа: Участник Сообщений: 122 Регистрация: 6.6.2015 Репутация: нет Всего: нет |
Использую СУБД Postgresql.
Есть таблица вида:
https://www.db-fiddle.com/f/p4... ck3ws8tJ/0 Есть массив строк контактов(например ['Иван','Петр']) и аккаунт, нужно из поля contact удалить этих пользователей. Если после этого массив пустой, то нужно удалить запись целиком. Например из набора:
После обновления таблица должна иметь вида:
Просьба помочь это сделать одним запросом |
||||||
|
|||||||
Akina |
|
|||
Советчик Профиль Группа: Модератор Сообщений: 20570 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 3 Всего: 453 |
Удаление и обновление одним запросом? что-то сомнительно...
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
polin11 |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 122 Регистрация: 6.6.2015 Репутация: нет Всего: нет |
Почему не одним запросом, например update или delete обернуть в cte?
|
|||
|
||||
Akina |
|
|||
Советчик Профиль Группа: Модератор Сообщений: 20570 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 3 Всего: 453 |
Потому что обернув действие в CTE, ты "разведёшь" и фактически материализуешь исходное и промежуточное состояния. И какое из них будет редактироваться дальше? Исходное? тогда первое изменение потеряется... промежуточное? но к нему не получится обратиться, оно не существует физически. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PostgreSQL | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |