法规和芋头 2013-09-29 10:18 采纳率: 100%
浏览 3224
已采纳

MySql存储过程里 如何接收返回的多个结果

BEGIN

DECLARE userNames varchar(500) DEFAULT ''; ##用户名字
DECLARE sums int DEFAULT 0; 
DECLARE namess varchar(500) DEFAULT ''; 
DECLARE i int; 
set i = 0;
select count(*) into sums from book where price = 123;
##select name into namess from book where price = 123;##这个是错误的因为这条sql 返回的有多条数据

while i < sums 
DO          
    set i = i+1;
end while;

END

上述select 中 结果为:
id name price
1 aa 123
2 bb 123

我想把得到的多条数据中 name字段里的值拿出来拼成 aa,bb 这样的字符传 怎么做,请大家帮帮我.感激不尽

  • 写回答

1条回答 默认 最新

  • ganjianing 2013-09-30 08:27
    关注

    $name = '';
    $sql = "select name from book where price=123";
    $que = mysql_query($sql) or die(mysql_error());
    while($arr = mysql_fetch_assoc($que)){
    $name .=','.$arr['name'];
    }
    echo substr($name,1);

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?