如何访问存储在SQL Server临时表变量中的列



如何访问存储在临时表变量中的列?

我试着用这种方式访问它:

set @Name = WeekName;

但是我得到了一个错误";列WeekName未定义";。

DECLARE @ListOWeekDays TABLE 
(
DayNumber INT,
DayAbb VARCHAR(40), 
WeekName VARCHAR(40)
)
DECLARE @Name VARCHAR(40);
INSERT INTO @ListOWeekDays
VALUES 
(1, 'Mon', 'Monday')  ,
(2, 'Tue', 'Tuesday') ,
(3, 'Wed', 'Wednesday') ,
(4, 'Thu', 'Thursday'),
(5, 'Fri', 'Friday'),
(6, 'Sat', 'Saturday'),
(7, 'Sun', 'Sunday')    
DELETE @ListOWeekDays 
WHERE DayNumber = 1
UPDATE @ListOWeekDays 
SET WeekName = 'Saturday is holiday'  
WHERE DayNumber = 6
SELECT * FROM @ListOWeekDays
SET @Name = WeekName;
PRINT @Name;

您需要定义一个SELECT查询来从临时表变量中获取值,就像其他任何表一样:

SELECT @Name = WeekName
FROM @ListOfWeekDays
-- add whatever condition makes sense here
WHERE DayNumber = 5;

由于您将值存储到单个变量中,因此必须确保选择仅返回单行,例如通过指定主键的值或其他一些唯一值。

最新更新