куча строк обновляется в одном вызове
А должна обновиться только одна?
получается вложенный select получает все строки, которые надо обновить во внешней таблице но сами таблицы разные по структуре, есть только несколько похожих столбцов. В фунции делаю, время смотрел через clock_timestamp(), несколько мс на замену уходит и это при очень маленько табличке
Я все еще не совсем понимаю, какого результата вы хотите добиться, если честно, но предположу, что вам нужно что-то подобное: with cte as ( select t.id, t.status_id from tickets t join temp ts on ts.id = t.id ) update temp ts set status_id = c.status_id from cte c where c.id = ts.id Где в куске join temp ts on ts.id = t.id будут отсеиваться только те поля, которые вам нужно обновить
у меня id разные, есть три столбца, в одной и в другой таблице, по ним и обновляю. Скажем так, есть небольшая табличка она содержит готовый перечень, их и ищу через Update. Sql внутри это делает по сути в цикле, но в одном запросе, получается чуть быстрее, но не на много
Обсуждают сегодня