MySQL_变量_自定义变量
说明:
变量时用户自定义的,不是由系统的
使用步骤:
声明
赋值
使用(查看、比较、运算等)
1 用户变量
作用域:针对于当前会话(连接)有效,同于会话变量的作用域
应用场景:任何地方,begin end里面 或 外面
赋值的操作符
=
:=
① 声明并初始化
SET @用户变量名 = 值;
SET @用户变量名 := 值;
SELECT @用户变量名 := 值;
② 赋值(更新用户变量的值)
方式一
通过SET 或 SELECT
SET @用户变量名 = 值;
SET @用户变量名 := 值;
SELECT @用户变量名 := 值;
方式二
通过SELECT INTO
SELECT 字段 INTO 变量名
FROM 表;
③ 使用(查看用户变量的值)
SELECT @用户变量名;
2 局部变量
作用域
仅仅在定义它的begin end 中有效
应用场景:
在begin end 中的第一句话
① 声明
DECLARE 变量名 类型;
DECLARE 变量名 类型 DEFAULT 值;
② 赋值
方式一
通过SET 或 SELECT
SET 局部变量名 = 值;
SET @用户变量名 :=值;
SELECT @用户变量名:=值;
方式二
通过SELECT INTO
SELECT 字段 INTO 局部变量名
FROM 表
③ 使用
SELECT 局部变量名
对比
| 作用域 | 定义和使用的位置 | 语法 | |
| 用户变量 | 当前会话 | 会话中的任何地方 |
必须加@, 不用限定类型 |
| 局部变量 | BEGIN END 中 |
只能在BEGIN END 中, 且为第一句话 |
一般不加@, 需要限定类型 |

浙公网安备 33010602011771号