更新另一个表时必须声明标量变量@tablename [重复]
Posted
技术标签:
【中文标题】更新另一个表时必须声明标量变量@tablename [重复]【英文标题】:Must declare scalar variable @tablename when updating another table [duplicate] 【发布时间】:2018-06-21 19:09:46 【问题描述】:我正在努力:
update existingTable
set code = @declaredTable.code
where id = @declaredTable.id
但是当我这样做时,我得到了错误:
必须声明标量变量“@declaredTable”
两次。
如何将现有表的值更新为已声明表中的值?
为什么这不起作用?
任何帮助将不胜感激!
【问题讨论】:
【参考方案1】:你需要JOIN
:
UPDATE e
SET e.code = d.code
FROM existingTable e INNER JOIN
@declaredTable d
on d.id = e.id;
【讨论】:
@MartinSmith。 . .对我来说,@declaredTable
建议使用表变量,如果是这样,则需要 JOIN
。以上是关于更新另一个表时必须声明标量变量@tablename [重复]的主要内容,如果未能解决你的问题,请参考以下文章