继续
http://bbs.csdn.net/topics/390365945?page=1#post-393660350
中的情况交叉表的存储过程运行之后会在MySQL中显示两个结果集,其实第二个结果集才是最需要的。但是PHP中直接获取的只有第一个结果集。请问怎么获取第二个。set @EE='';
SELECT @EE:=CONCAT(@EE,'max(IF(date=\'',date,'\'',',name,0)) AS \'',date,'\',') FROM (SELECT DISTINCT date FROM 表 GROUP BY date) a;
SET @QQ=CONCAT('SELECT ifnull(class,\'total\'),',LEFT(@EE,LENGTH(@EE)-1),' FROM 表GROUP BY class with rollup');
prepare stmt2 from @QQ;
execute stmt2; 

解决方案 »

  1.   

    建立临时表
    SET @QQ=CONCAT('create table tt as SELECT .....')
      

  2.   

    没理解你的意思,我想问的是,怎么从PHP获取第二个记录集。
      

  3.   


    又遇到一个问题。每次服务器重启之后,第一次运行会出现如下的错误,之后再查询就正常了。
    A Database Error OccurredError Number: 1146Table 'test.tt' doesn't existSELECT * FROM ttFilename: D:\php\ci\system\database\DB_driver.phpLine Number: 330
      

  4.   

    PHP里的代码如下:
             $this->db->query("CALL kkkk('".$tea."','".$id."')");
             $this->db->reconnect();
             $query =$this->db->query("SELECT * FROM tt");