如何在另一个存储过程

时间:2016-08-31 16:08:24

标签: mysql sql

我想过滤另一个存储过程

中存储过程返回的结果集

例如:

delimiter //
create procedure x()
begin
select 1 as a, 2 as b,3 as c;
end //

在存储过程中,我只想选择' a'列值从' x'返回存储过程

delimiter //
create procedure y()
begin

end// 

1 个答案:

答案 0 :(得分:0)

也许这会有所帮助。

首先从proc x获取结果到临时表tmp

            delimiter //
            create procedure x()
            begin
            create temporary table `tmp`
            select 1 as a, 2 as b,3 as c;
            end //

然后将proc x调用proc y

            delimiter //
            create procedure y()
            begin
            call x();
            select a from tmp;
            end //

最后调用y()从proc x选择结果字段a。

如果您只想获得proc x结果,请运行:

            call x();
            select * from tmp;