Think PHP6 当使用多表查询时 重复字段会被覆盖 解决字段重复覆盖问题

如上述出现了两个name  如果都需要这个name值会出现后面的值覆盖前面的值的情况
废话少说  上解决方案

 $db['total'] = Db::name('cancel')->where('shop_id',$shop_id)->count();
        $db['date'] = Db::name('cancel')->alias('cancel')
            ->leftJoin('eb_shop_coupon coupon', 'cancel.coupon_id=coupon.id')  //关联卡券表
            ->leftJoin('eb_user user', 'cancel.uid=user.uid') //关联用户表
            ->leftJoin('eb_system_store_staff staff', 'cancel.cancel_people_id=staff.uid') //关联店员表
            ->leftJoin('system_store store','cancel.shop_id=store.id')//关联门店表
            ->where('cancel.shop_id', $shop_id)
            ->field('coupon.name as coupon_name,coupon.id,user.real_name,user.avatar,coupon.img,cancel.add_time,store.name')
            ->page($page, $limit)->select()->toArray();

coupon.name会被store.name的值覆盖  我们保留coupon的值  就给coupon.name起一个新名字就好了
coupon.name as coupon_name

这样就解决问题了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值