麒麟v10 上部署 TiDB v5.1.2 生产环境优化实践
934
2023-05-25
数据库知识:SQLServer变量相关知识介绍
1、概述
SQLServer变量对应内存中的一个存储空间。它和常量不同,变量的值可以在执行过程中改变。
2、分类
SQLServer变量根据作用范围不同主要分为局部变量和全局变量。
2.1.局部变量
局部变量是用户在程序中定义的变量,它仅在定义的程序范围内有效。局部变量可以用来保存从表中读取的数据,也可以作为临时变量保存计算的中间结果。
注意:局部变量名称的第一个字符必须为一个@。
示例:
-- 定义两个局部变量 DECLARE @m int,@n int; -- 赋值 SET @m=9; SET @n=1; -- 查询 SELECT @m+@n;
2.2 全局变量
全局变量通常以@@开头。这些变量一般都是SQL Server中的系统函数,它们的语法遵循函数的规则。用户可以在程序中使用这些函数测试系统特性和SQL命令的执行情况。常用的全局变量如下:
@@ERROR -- 最后一个SQL错误的错误号 @@IDENTITY -- 最后一次插入的标识值 @@LANGUAGE -- 当前使用的语言的名称 @@MAX_CONNECTIONS -- 可以创建的同时连接的最大数目 @@ROWCOUNT -- 受上一个SQL语句影响的行数 @@SERVERNAME -- 本地服务器的信息 @@TRANSCOUNT -- 当前连接打开的事物数 @@VERSION -- 查看SQL Server的版本信息
DECLARE @name nvarchar(30);
DECLARE @Name nvarchar(30), @Age int;
3.3 变量作用域
USE DB; GO DECLARE @Age int; SET @Age = 30; GO -- 结束符 select @Age -- 报错
4.变量赋值
变量也可以通过选择列表中当前所引用的值赋值。如果在选择列表中引用变量,则它应当被赋以标量值或者SELECT语句应仅返回一行。
示例:
DECLARE @Age int; -- SELECT语句赋值 SELECT @Age = age from t_user ORDER BY age desc;-- 返回最后一行的值 select @Age;
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。