22

我开始拔头发了,这样的事情可能吗?

DECLARE var1 int;
DECLARE var2 int;
DECLARE var3 int;
SELECT var1:=id, var2:=foo, var3:=bar from page WHERE name="bob";
CALL someAwesomeSP (var1 , var2 , var3 );

以上不起作用,但我试图弄清楚我将如何实现这一点。我的最终目标是调用一个选择,然后使用来自选择的数据调用存储的过程。
谢谢

4

2 回答 2

28

这对我有用。

        DECLARE var1 int;
        DECLARE var2 int;
        DECLARE var3 int;
        SELECT id, foo, bar INTO var1, var2, var3 from page WHERE name="bob";
        CALL someAwesomeSP (var1 , var2 , var3 );

感谢泽克。第一个链接帮助我理解了正确的语法,或者至少是什么对我有用。

于 2013-07-02T05:25:30.377 回答
26

对于 MySQL,请查看此示例代码:

-- Init variables
SET @var1 = 0;
SET @var2 = 0;
SET @var3 = 0;
SELECT VALUE1, VALUE2, VALUE3 INTO @var1, @var2, @var3 FROM COOL_TABLE WHERE VALUE_ID = 12345;

-- Then you can use declared variables
SELECT * FROM ANOTHER_TABLE WHERE VALUE1 = @var1 AND VALUE2 = @var2
于 2016-11-05T23:55:34.307 回答