首页 > 数据库 > mysql

mysql存储过程 多条记录合并到一个变量输出

发布时间:2016-10-14 22:01

在app应用里调用mysql的存储过程

需要一次获取多个记录,并且通过存储过程获得

用到了游标 cursor

-- Procedure "tsjl" DDL

CREATE DEFINER=`root`@`localhost` PROCEDURE `tsjl`(OUT myout VARCHAR(254),in openid1  VARCHAR(128))
BEGIN

       declare stop_flag int DEFAULT 0;

     declare st1 VARCHAR(254);

       declare st2 VARCHAR(254);


       declare cur1 cursor for select tid  from  wx_wap_task where openid=openid1 and tstatus>0;

      declare CONTINUE HANDLER FOR SQLSTATE '02000' SET stop_flag=1;

      open cur1;

fetch cur1 into st1;

    while stop_flag<>1 DO



                    fetch cur1 into st2;

                set  st1=concat(st1,'@',st2);

                 end while;

                close cur1;



      set @myout=st1;

       SELECT @myout;

END;

我用过,放心用!

标签:[!--infotagslink--]

您可能感兴趣的文章: