当前位置:Gxlcms > mysql > mysql使用存储过程返回多个值

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

时间:2021-07-01 10:21:17 帮助过:20人阅读

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 可以使用OUT、INOUT参数类型让存储过程返回多个结果值,存储函数不能胜任,因为只能返回一个值。比如统计student数据表里男生和女生人数并通过它的参数返回这两个计数值,让调用者可以访问它们: [sq

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入

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

  [sql]

  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 ;

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

  [sql]

  CALL count_students_by_sex(@mcount,@fcount);

  select 'Number of male students:',@mcount;

  结果:

  Number of male studens: @mcount

  Number of students: 16

人气教程排行