mysql 自定义变量【用户变量、局部变量】

学习笔记 马富天 2020-05-29 14:06:30 107 0

【摘要】mysql 变量可分为系统变量和自定义变量,而自定义变量又可以分为局部变量和用户变量。今天就对 mysql 的这两种自定义变量进行简单的介绍和记录。

一、用户变量

用户变量仅在当前会话连接中有效,在其它客户端连接中无效,并且一旦连接断开后则失效,所以也被称之为会话变量。

用户变量的格式为:@var_name,其中 var_name 可以用数字、字母、'_'、'.'、'$'组成,变量名不区分大小写。

创建自定义变量并赋值,可以用 '='、':=' 进行赋值操作,可以为每个变量整数、字符串、NULL值等,通常有以下几种方式:

  1. set @name = 'hello world'; -- set @Name = 'hello world';
  2. set @name := 'hello world';
  3. select 'hello world' into @name; 
  4. -- select name into @name from user where id = 1 limit 1;
  5. select @name := 'hello world';
  6. select @max_id := max(id) from user;

同时赋值多个变量:

  1. set @name = 'mafutian',@age = 18,@sex = Null;
  2. set name,age into @name,@age from where id = 1 limit 1;

查询变量:

  1. select @name;
  2. select @name,@age; -- 同时查询多个变量

二、局部变量

局部一般是用在 sql 语句块中,比如存储过程、存储函数的 begin / end 中,它的作用域仅限于该语句块中。

通常定义与赋值方式为:

  1. declare var_name varchar(255) default '';
  2. declare var_age int;
  3. set var_name = 'hello world';
  4. set var_age = 19;
  5. select name,age into var_name,var_age from user where id = 1 limit 1; -- 只能是返回一条记录的 sql

版权归 马富天个人博客 所有

本文标题:《mysql 自定义变量【用户变量、局部变量】》

本文链接地址:http://www.mafutian.com/444.html

转载请务必注明出处,小生将不胜感激,谢谢! 喜欢本文或觉得本文对您有帮助,请分享给您的朋友 ^_^

0

0

上一篇《 MySQL 系统变量介绍——全局变量和会话变量 》 下一篇《 MySQL 事务的四种隔离级别简介 》

暂无评论

评论审核未开启
表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情
验证码

TOP10

  • 浏览最多
  • 评论最多