我在存储过程中有一个本地表变量,包含几列;我需要根据该行的第1列的值更新每行的第2列和子查询的结果。
类似的东西:
UPDATE @mytable
SET column2 = (SELECT ... FROM ... WHERE something = @mytable.column1)
但这似乎不起作用,我得到一个关于@mytable未定义的错误。
此查询的正确语法是什么?
答案 0 :(得分:4)
您是否尝试过使用ALIAS?
UPDATE temp
SET temp.column2 = (SELECT ... FROM ... WHERE something = temp.column1)
FROM @mytable temp