Home >Database >Mysql Tutorial >mysql使用存储过程回来多个值

mysql使用存储过程回来多个值

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-07 16:15:191526browse

mysql使用存储过程返回多个值 可以使用OUT、INOUT参数类型让存储过程返回多个结果,存储函数不能胜任,因为只能返回一个。比如统计student数据表里男生和女生人数并通过它的参数返回这两个计数,让调用者可以访问它们: delimiter $$create procedure count_s

mysql使用存储过程返回多个值

可以使用OUT、INOUT参数类型让存储过程返回多个结果值,存储函数不能胜任,因为只能返回一个值。比如统计student数据表里男生和女生人数并通过它的参数返回这两个计数值,让调用者可以访问它们:

delimiter $$
create procedure count_students_by_sex(out p_male int ,out p_female int)
begin
select  count(*) from student where sex= 'M' into p_male;
select count(*) from student where sex='F' into p_feamle;
end $$
delimiter ;


 

在调用这个过程的时候,把参数替换为用户自定义变量。如:

CALL count_students_by_sex(@mcount,@fcount);
select 'Number of male students:',@mcount;


 

结果:

Number of male studens: @mcount
Number of students: 16
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn