使用单个SQL查询将列值放在变量中

时间:2010-03-30 17:18:19

标签: sql sql-server tsql

在SQL server中,如何使用一个查询在变量中放置多个列的值?

例如:我的查询是:

SELECT ET.ID,ET.Description,ET.DefaultTemplateText 
FROM TBL_EMAILTEMPLATE ET 
WHERE ET.NAME='OneWeekReminder'

我想将列值放在变量中。

4 个答案:

答案 0 :(得分:14)

您可以使用以下语法:

Declare @id INT
Declare @desc VarChar(100)
Declare @template VarChar(100)

SELECT @id = ET.ID, @desc = ET.Description, @template = ET.DefaultTemplateText 
FROM TBL_EMAILTEMPLATE ET 
WHERE ET.NAME='OneWeekReminder'

答案 1 :(得分:5)

首先声明变量,然后在select子句中设置它们。

declare
    @ID int,
    @Description varchar(10),
    @DefaultTemplateText varchar(10)

select
    @ID = ET.ID,
    @Description = ET.Description,
    @DefaultTemplateText = ET.DefaultTemplateText
from
    TBL_EMAILTEMPLATE ET
where
    ET.NAME = 'OneWeekReminder'

答案 2 :(得分:4)

您可以使用逗号分隔多个作业。例如:

declare @a varchar(50)
declare @b varchar(50)

select 
    @a = et.Description
,   @b = et.DefaultTemplateText
from YourTable

答案 3 :(得分:3)

假设只有一行,

SELECT @id = ET.ID, @Description = ET.Description, @DefaultTemplateText = ET.DefaultTemplateText
FROM TBL_EMAILTEMPLATE ET 
WHERE ET.NAME='OneWeekReminder'