MySQL:如何在存储过程中使用select设置局部变量?

时间:2019-02-02 03:30:33

标签: mysql stored-procedures

看来这一定是一个愚蠢的问题:),但我似乎找不到它张贴在任何地方。

我需要在select语句的存储过程中设置多个局部变量。

这在查询窗口中有效:

select  @value1 := value1, @value2 := value2 from test_table limit 1; 
select  @value1, @value2;

但是当我尝试在存储过程中做类似的事情时,我得到: SQL错误(1064):您的SQL语法有错误...

BEGIN

    declare p_value1 varchar(50); 
    declare p_value2 varchar(50); 
    select  p_value1 := value1, p_value2 := value2 from test_table limit 1; 

END

任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:1)

使用SELECT...INTO syntax

BEGIN

    declare p_value1 varchar(50); 
    declare p_value2 varchar(50); 
    select value1, value2 into p_value1, p_value2 from test_table limit 1; 

END