【发布时间】:2017-12-20 06:10:19
【问题描述】:
我有一个这样的查询:
UPDATE t1
SET t1.col1 = ( SELECT col1 FROM t2 WHERE <some_complex_conditions> ),
t1.col2 = ( SELECT col2 FROM t2 WHERE <some_complex_conditions> )
WHERE id = :id;
如您所见,我必须对同一列执行两次相同的查询。同样正如我所提到的,SELECT 查询有一些复杂的条件,需要大量处理。现在我想知道,如何处理UPDATE 语句以通过单个SELECT 语句获取这两列的更新?
类似这样的:
SELECT col1, col2 FROM t2 WHERE <some_complex_conditions>
换句话说,我怎样才能在UPDATE 语句中使用这个^?
【问题讨论】:
-
查找更新/加入语法。