T-SQL 中的变量分为局部变量和全局变量。局部变量的使用也是先声明、在赋值。而全局变量由系统定义和维护、可以直接使用。
1、局部变量:
局部变量的名称必须以标记@作为前缀。
语法:
DECLARE @variable_name DataType
例如:
DECLARE @name
varchar(8)
DECLARE @number
int
2、局部变量的赋值方法: 使用 SET 或 SELECT 语句
语法:
SET @variable_name = value
或
SELECT variable_name = value
例如:
DECLARE @name varchar(20)
DECLARE @StudentNo varchar(20)
SET @name = ‘小王‘ -- 使用 SET 赋值
-- 使用 SELECT 赋值
SELECT @StudentNo
= studentNo FROM Student WHERE studentName = @name
(1) SET 赋值语句一般用于赋值给变量指定的数据常量
(2) SELECT 赋值语句一般用于从表中查询数据,然后再赋值给变量。SELECT 语句需要确保筛选的记录不多于一条。如果查询的记录多于一条,将把最后一条记录的赋值给变量。
SET 与 SELECT 的区别
SET SELECT |
同时对多个变量赋值 不支持
支持 表达式返回多个值时 出错 将返回的最后一个值赋给变量 表达式未返回值时 变量被赋 NULL 值 变量保持原值 |
SET 语句没有结果集,占用资源少,给一个变量赋值时,SET 效率更高
原文:http://www.cnblogs.com/xiaota/p/3538452.html