用户变量
SET @myvar = 42; SELECT @myvar;
用户变量以@开头,在当前会话中可用,也可以在多个查询语句中使用。它们不会持续存储,并且在会话结束时被清除。
本地变量
DECLARE myvar INT DEFAULT 42; SELECT myvar;
本地变量必须使用DECLARE语句在存储过程或函数中声明并进行初始化。它们的作用域限于存储过程或函数块,并且在块结束时被销毁。
全局变量
SET GLOBAL myvar = 42; SELECT @@myvar;
全局变量以@@开头,可以在MySQL实例中的所有会话中使用。它们可以存储在配置文件中,并在MySQL实例结束时持久化。
了解这三种变量类型可以帮助大家更有效地编写MySQL查询和存储过程。