fr0zen
@fr0zen

Как удалить данные подзапроса в postgres?

У меня есть подзапрос, как удалить данные которые в нем из таблицы?
Пытался сделать вот так, но не работает
with to_del as (
select * from Чат where Тема='427c6f3e-9876-48c5-b44d-776771f7c2c9')
delete from to_del


UDP: Есть ситуация, чат в котором 100500 сообщений. мы хотим удалить этот чат. пытаться удалить все одним запросом - все заблокируется, работа встанет. Есть желание удалять порциями, после удаления каждой порции sql запрос должен отдавать количество записей, которое сейчас удалилось. Бизнес логика будет крутить sql скрипт до тех пор, пока возвращенное значение не будет равно нулю.
Поэтому я хочу сделать подзапрос с лимитом, отдать его на удаление и вернуть количество записей. Если есть другие варианты решения - велкам.
  • Вопрос задан
  • 517 просмотров
Решения вопроса 1
BuriK666
@BuriK666
Компьютерный псих
delete from Чат where id IN (select id from Чат where Тема='427c6f3e-9876-48c5-b44d-776771f7c2c9' LIMIT 1000)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы