MySQL从单个查询语句中输出多个输出

时间:2015-02-13 13:39:12

标签: mysql stored-procedures

我试图从同一个查询输出两个值,如

CREATE DEFINER=`root`@`localhost` PROCEDURE `find`(IN A varchar(100), OUT B varchar(100), OUT C varchar(100))
BEGIN

Select b_col into B, c_col into C from table where a_col = A

END

似乎不可能两次使用“into”。是否需要为输出创建临时表?

实现这一目标的最佳解决方案是什么,欢迎提出任何建议

谢谢你

2 个答案:

答案 0 :(得分:0)

您只需列出into子句中的变量:

Select b_col into B, c_col into B, C
from table
where a_col = A;

我建议您在参数变量前加上前缀,以便将它们与列区分开来。可能是in_Aout_Bout_C

答案 1 :(得分:0)

如果内存对我有用,所有目标变量都应列在into关键字之后,如下所示:

Select b_col, c_col into B,C from table where a_col = A