为了账号安全,请及时绑定邮箱和手机立即绑定

mysql里有一个商品表goods和一个商品图片表goods_img,两表通过商品表的id和商品图片表的goodId关联

mysql里有一个商品表goods和一个商品图片表goods_img,两表通过商品表的id和商品图片表的goodId关联

晓风莞尔 2017-04-08 09:13:54
已经通过php检索出商品表里的数据$sql="select * from goods";$rows=fetchAll($sql);echo json_encode($rows);但现在我想把每一个商品的图片数据塞进该条商品数据里,怎么实现呢比如
查看完整描述

3 回答

已采纳
?
nadirvishun

TA贡献2条经验 获得超1个赞

可以重新组装数组,但是获取大量列表时会多次查询数据库:

foreach ($rows as $key=>$row){
    $sql="select images from goods_img where goods_id=".$row['id'];
    $images_rows=fetchAll($sql);
    $rows[$key]['images']=$images_rows;//或者加上url处理
}

为了减少数据查询,也可以线一次性取出所有与列表相关的图片数据,然后再组装成想要结果:

$sql="slect goods_id,images from goods_img where goods_id in(1,3,4,5)";//主表中查询到的所有id
$images_rows=fechAll($sql);
foreach($rows as $key=>$row){
    foreach($images_rows as $k=>$v){
        if($row['id']==$v['goods_id']){
            $rows[$key]['images'][]=$v['images']//或者加上url
        }
    }
}

以上仅仅是示例。


查看完整回答
1 反对 回复 2017-04-08
  • 3 回答
  • 3 关注
  • 5687 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信