MySQL如何声明变量赋值
在MySQL中,声明变量并赋值可以通过SET语句或SELECT ... INTO语句实现,其中变量名前需添加符号表示用户自定义变量,用于存储临时数据并在会话中跨查询使用,以下是具体方法和示例:
使用SET语句声明和赋值
SET语句是最常用的变量赋值方式,语法灵活,可直接为变量赋予具体值或表达式结果。

-- 声明变量并赋值 SET @变量名 = 值; -- 示例:定义变量存储年龄 SET @age = 25; -- 使用表达式赋值 SET @total = (SELECT COUNT(*) FROM users);
使用SELECT ... INTO语句赋值
通过查询结果直接为变量赋值,适用于从表中获取数据存储到变量中。
-- 将查询结果赋值给变量 SELECT 列名 INTO @变量名 FROM 表名 WHERE 条件; -- 示例:获取用户姓名存储到变量 SELECT name INTO @username FROM users WHERE id = 1;
变量使用注意事项
- 变量作用域:以开头的用户变量在整个数据库会话中有效,会话结束后自动释放。
- 变量类型:MySQL变量为动态类型,根据赋值自动确定数据类型(如整数、字符串等)。
- 默认值:未赋值的变量初始状态为
NULL。
实际应用示例
-- 计算订单平均金额并存储 SET @avg_price = (SELECT AVG(price) FROM orders); -- 使用变量进行条件查询 SELECT * FROM products WHERE price > @avg_price;
通过合理使用变量,可以简化复杂查询、提升代码可读性,并实现数据在多个SQL语句间的传递,注意避免滥用变量,以确保查询性能和数据一致性。
未经允许不得转载! 作者:HTML前端知识网,转载或复制请以超链接形式并注明出处HTML前端知识网。
原文地址:https://www.html4.cn/17308.html发布于:2026-09-16





