У меня есть SQL-запрос, который может возвратиться с 0 до 20 результатов. Вот, например:Запустить запрос UPDATE для каждой строки в другом SELECT
SELECT value_id FROM table1 t1
INNER JOIN table2 t2 ON ....
INNER JOIN table3 t3 ON ....
WHERE ....
Затем я хочу запустить для каждого value_id
UPDATE запроса. Предположим:
UPDATE table4
SET new_value = 1
WHERE value_id IN (SELECT value_id FROM table1 t1
INNER JOIN table2 t2 ON ....
INNER JOIN table3 t3 ON ....
WHERE ....)
Может ли этот подзапрос работать над этим? Является ли производительность эффективной или есть другой способ?
Hi @utility. Это MSSQL – Tasos
Обновление с использованием соединений лучше, чем подзапрос –
Да, есть другой способ. Вы можете использовать join (Update From) или использовать таблицу шаблонов. – NEER