从MYSQL存储过程返回多个结果集

时间:2011-09-10 23:30:25

标签: mysql stored-procedures

如何从MYSQL存储过程返回多个结果集?

这是我的测试存储过程:

DELIMITER $$

CREATE DEFINER=`hlamAdmin`@`%` PROCEDURE `test`()
BEGIN
   SELECT *
   FROM hlam.member;

   SELECT * 
   FROM hlam.security;

END

现在我称之为:

Call test()

我只收到一个结果集。我如何同时收到?我习惯了MSSQL我很抱歉,如果这是一个简单的问题。

2 个答案:

答案 0 :(得分:1)

您可以尝试加入它们(将它们链接在一起)或使用UNION(将两个选择组合在一起);

http://dev.mysql.com/doc/refman/5.0/en/join.html

select a.col1, b.col1
from table1 a
inner join table2 b on a.id = b.id;

http://dev.mysql.com/doc/refman/5.0/en/union.html

select name as col1, surname as col2 from table1
union
select location as col1, desc as col2 from table2;

约翰

答案 1 :(得分:0)

使用HeidiSQL(免费的MySQL客户端),我得到两个结果集,但是在两个不同的标签上。