Existuje nejaký spôsob, ako použiť vrátenú hodnotu uloženej procedúry v inej uloženej procedúre?
Len veľmi základný teoretický príklad:
CREATE PROCEDURE `user_read_name_and_email` (
IN `param_user_id` INT
)
BEGIN
DECLARE `current_user` SET;
SET `current_user` = CALL `user_read`(`param_user_id`);
SELECT `user_name`, `user_email` FROM `current_user`;
END
CREATE PROCEDURE `user_read` (
IN `param_user_id` INT
)
BEGIN
SELECT * FROM `user` WHERE `user_id` = `param_user_id`;
END
odpovede:
0 pre odpoveď č. 1Myslím, že jedným a jediným riešením je použiť dočasné tabuľky.
Váš príklad by bol možný v MS SQL Server 2008 - tam môžete určiť výstup uloženej procedúry na niektoré premenné.