如何在子查询中引用临时表



>我在存储过程中有一个局部表变量,包含几列;我需要根据该行的第 1 列的值,使用子查询的结果更新每行的第 2 列。

像这样:

UPDATE @mytable
SET column2 = (SELECT ... FROM ... WHERE something = @mytable.column1)

但这似乎不起作用,我收到一个关于@mytable未定义的错误。

此查询的正确语法是什么?

你试过使用别名吗?

UPDATE temp 
SET temp.column2 = (SELECT ... FROM ... WHERE something = temp.column1) 
FROM @mytable temp

最新更新