MySQL十七:变量

MySQL十七:变量,第1张

MySQL十七:变量 变量 一、概述
    定义

    在MySQL数据库的存储过程和函数中,可以使用变量来存储查询或计算的中间数据,或输出最终的结果数据。

    分类 分类细分关键字系统变量全局系统变量(全局变量)GLOBAL*会话系统变量(local变量)(默认)SESSION用户自定义变量会话用户变量*局部变量

    系统变量 及 用户自定义变量

二、系统变量
    定义

    属于服务器层面。启动MySQL服务,MySQL将为MySQL服务器内存中的系统变量赋值,这些系统变量定义了当前MySQL服务实例的属性、特征。

    要么是编译MySQL时参数的默认值,要么是配置文件 - my.ini 中的参数值。

    分类

    有些系统变量只能是全局的;

    有些系统变量既可以是全局又可以是会话;

    有些系统变量只能是当前会话(相当于在Natival中连接了一次用户)

    查看
    # 查看全部系统变量
    SHOW GLOBAL VARIABLES;
    SHOW SESSION VARIABLES;
    # 查看部分系统变量
    SHOW GLOBAL VARIABLES LIKE '%标识符%';
    SHOW SESSION VARIABLES LIKE '%标识符%';
    # 查看指定系统变量
    SHOW @@globle.变量名;
    SHOW @@session.变量名;
    
    修改

    在MySQL服务器运行器即可修改

    # 为某个系统变量赋值
    SET @@globle.变量名 = 变量名;
    SET GLOBAL 变量名 = 变量名;
    # 为某个会话变量赋值
    SET @@session.变量名 = 变量名;
    SET SESSION 变量名 = 变量名;
    
三、用户自定义变量
    会话用户变量(以@开头)
    # 设置用户变量
    SET @用户变量 = 值;
    # 查看用户变量
    SELECt @用户变量 := 表达式;
    SELECT 表达式 INTO @用户变量 [FROM 等子句]
    
    SELECt @num := COUNT(*) FROM employees;
    SELECt AVG(salary) INTO @avgsalary FROM employees;
    
    查看用户变量

    只能放在BEGIN…END中,只能放在第一句

    # 声明变量
    DECLARE 变量名 类型 [DEFAULT 值];
    # 变量赋值
    SET 变量名 = 值;
    SELECt 字段名或表达式 INTO 变量名 FROM 表;
    # 查看变量
    SELECT 局部变量名;
    

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5704736.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存