SQL Server:内部联接中使用的表变量 [英] SQL Server: table variable used in a inner join
本文介绍了SQL Server:内部联接中使用的表变量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
下面的 SQL 有什么问题.JOIN 子句中可以不使用表变量吗?
What is the problem with following SQL. Can table variable not be used in JOIN clause?
错误消息是消息 170,级别 15,状态 1,第 8 行第 8 行:'t1' 附近的语法不正确."
Error msg is of "Msg 170, Level 15, State 1, Line 8 Line 8: Incorrect syntax near 't1'."
Declare @t TABLE (
_SportName varchar(50),
_Lang varchar(3)
)
insert @t VALUES('Basketball', 'ENG') -- ENG
UPDATE tblSport t1
SET
t1.SportName = @t._SportName
FROM
@t INNER JOIN tblSport ON (t1.Lang = @t._Lang)
谢谢.
推荐答案
将您的最后一条语句更改为:
Change your last statement to:
UPDATE t1, temp
SET t1.SportName = temp._SportName
FROM tblSport AS t1
INNER JOIN @t AS temp
ON t1.Lang = temp._Lang
(需要检查准确的语法)
(need to check exact syntax)
这篇关于SQL Server:内部联接中使用的表变量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文