MySQL如何从[存储过程]插入[临时表]

问题描述

问题是,存储过程并不能真正直接返回输出。他们可以在脚本内执行select语句,但没有返回值。

MysqL通过调用存储过程CALL StoredProcedureName(); ,您不能将输出定向到任何东西,因为 (不同于函数)。

MySQL调用命令

解决方法

这与问题653714非常相似,但是对于MySQL而不是SQL Server。

基本上,我有一个复杂的选择,它是几个存储过程的基础。我想在存储过程中共享代码,但是,我不确定该怎么做。我可以这样做的一种方法是,使共享选择存储过程,然后从其他存储过程中调用该存储过程。我不知道如何使用嵌套存储过程的结果集。如果我可以将它们放在临时表中,则可以有效地使用结果,但是我不知道如何将它们放入临时表中。例如,这不起作用:

CREATE TEMPORARY TABLE tmp EXEC nested_sp();