使用单个 SQL 查询将列值放在变量中
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/2547173/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Placing column values in variables using single SQL query
提问by Shyju
In SQL server, how can I place the value of more than one column in variables using one query?
在 SQL Server 中,如何使用一个查询将多列的值放在变量中?
Ex: my query is:
例如:我的查询是:
SELECT ET.ID,ET.Description,ET.DefaultTemplateText
FROM TBL_EMAILTEMPLATE ET
WHERE ET.NAME='OneWeekReminder'
I want to place the column values in variables.
我想将列值放在变量中。
回答by Oded
You can use the following syntax:
您可以使用以下语法:
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'
回答by JC Ford
declare the variables first then set them in the select clause.
首先声明变量,然后在 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'
回答by Andomar
You can separate multiple assignments with a comma. For example:
您可以用逗号分隔多个分配。例如:
declare @a varchar(50)
declare @b varchar(50)
select
@a = et.Description
, @b = et.DefaultTemplateText
from YourTable
回答by Nathan Koop
Assuming only one row,
假设只有一行,
SELECT @id = ET.ID, @Description = ET.Description, @DefaultTemplateText = ET.DefaultTemplateText
FROM TBL_EMAILTEMPLATE ET
WHERE ET.NAME='OneWeekReminder'