变量
分类:
- 系统变量:由系统提供,不是用户定义的,又分为全局变量,会话变量
- 自定义变量:分为用户变量和局部变量
系统变量
属于服务器层面,
使用语法:
- 查看所有的系统变量
show global| [session] variable
- 查看满足条件的部分系统变量
show global| [session] variable like 'char';
自定义变量
变量是用户自定义的
使用步骤:
声明:
赋值:
使用:
用户变量:
作用域:针对于当前会话有效,同于会话变量的作用域
声明并初始化:
set @用户变量名 = 值;
set @用户变量名: = 值;
select @用户变量名: = 值;
赋值:(更新用户变量的值)
上面初始化也是一种方法
select 字段 into @变量名
from 表;
查看:
select @count;
放置位置:
begin end里面和外面都行
使用的时候也要加@
局部变量
作用域:只能够放在begin和end块中;且必须是第一句话
声明:
declare 变量名 类型;
declare 变量名 类型 default 值;
赋值:
set 用户变量名 = 值;
set 用户变量名: = 值;
select @用户变量名: = 值;
select 字段 into @变量名;
使用 select 局部变量名
用户变量和局部变量比较
作用域 | 定义和使用的位置 | 语法 | |
---|---|---|---|
用户变量 | 当前会话 | 必须加@ | |
局部变量 | begin end中 | begin end中,且必须为第一句话 | 一般不用加@,需要限定类型 |