系统变量
说明:变量由系统提供,不是用户定义,属于服务器层面
全局变量作用域: 服务器每次启动将所有的全局变量赋值。
session变量作用域: 在每个session中有效
全局变量
查看所有系统变量
show global|[session] variables;
查看满足条件的部分系统变量
show global|[session] variables like '%关键词%'
查看具体的某个系统变量的值
select @@系统变量名;
-- eg
select @@log_bin;
select @@global.变量名;
select @@session.变量名;
为某个系统变量设值
set global|[session] 系统变量名 = 值;
-- 或者
set @@global|[session].系统变量名 = 值;
session变量
用户变量
声明和赋值
赋值的操作符: = 或 :=
set @用户变量名=值;或
set @用户变量名:=值;或
select @用户变量名:=值;
赋值并使用
set @count = 0;
slect count(*) into @count
from emplyees
select @count;
局部变量
声明
declare 变量名 类型;
declare 变量名 类型 DEFAULT 值;
赋值
方式一:通过set或select
set 局部变量=值;或
set 局部变量名 := 值 或
select 局部变量名 := 值
方式二:通过select into
select 字段 into 局部变量名
from 表;
使用
select 局部变量名;
举例
-- 用户变量
set @m = 1;
set @n = 1;
set @sum = @m+@n;
select @sum;
-- 局部变量