必须在sql中声明scaler变量

时间:2016-03-20 11:29:40

标签: sql-server join

我在MSSQL中有两个表并尝试进行简单的连接,但即使我有连接经验,我也无法解决这个问题。

declare @Table1 table
(
UserName nvarchar(4)
)
declare @Table2 table
(
UserName nvarchar(4),
UserSurname nvarchar(50)
)

SELECT * FROM @Table1 JOIN @Table2 ON @Table1.UserName = @Table2.UserName

当我运行查询时,出现'必须声明标量变量'@ Table1“这样的错误。”并且'必须声明标量变量“@ Table2”。' 我加入两个具有相同属性名称的表,这必须保持这种方式。为什么我会收到这样的错误?谢谢你的时间。

1 个答案:

答案 0 :(得分:1)

您必须对表变量进行别名,如下所示:

SELECT * 
FROM @Table1 AS Table1
JOIN @Table2 AS Table2 ON Table1.UserName = Table2.UserName