变量

系统变量


全局变量

会话变量


自定义变量


用户变量

局部变量


系统变量

说明:变量由系统提供,不是用户定义,属于服务器层面

使用语法

查看所有的系统变量


show global | session variables;


查看满足条件的部分系统变量


show global | sessio variable like ‘%char%’


查看指定的某个系统变量的值


select @@global | session.系统变量名


为某个系统变量赋值


set global | session 系统变量名=值



set @@global | session.系统变量名=值


注意:​ 如果是全局级别,则需要加GLOBAL,如果是会话级别,则需要加SESSION,如果不写,则默认SESSION

自定义变量

说明:变量是用户自定义的,不是由系统的

使用步骤


声明

赋值

使用(查看,比较,运算等)


用户变量

作用域:针对对于当前会话(连接)有效,同于会话变量的作用域

①声明并初始化


set @用户变量名=值;



set @用户变量名:=值;



select @用户变量名:=值


②赋值(更新用户变量的值)

方式一


set @用户变量名=值;



set @用户变量名:=值;



select @用户变量名:=值


方式二

通过SELECT INTO


SELECT 字段 INTO 变量名

FROM 表


③使用(查看用户变量的值)

局部变量

作用域:只在定义它的begin end中有效**,且为第一句话**

①声明

DECLARE 变量名 类型;

DECLARE 变量名 类型 DEFAULT 值;

②赋值

方式一


set @用户变量名=值;



set @用户变量名:=值;



select @用户变量名:=值