zoukankan      html  css  js  c++  java
  • tp5连表查询时,where语句冲突问题

    今天做连表查询的时候,发现加入where语句时会报该条件不明确的sql错误,有点懵,

    翻找了一些资料,发现是其中两张表有相同的字段名,我又没有指定该where条件是哪张表的该字段。

    修改为where为以下代码即可

    $where = array(
        'a.store_id' => $storeId,
        'a.goods_user_status' => 1,
    );

    public function index()
    {
    //获取当前店铺id
    $uid = session('home_uid');
    $storeId = db('store')->where('store_uid',$uid)->field('store_uid')->find();
    $storeId = implode(" ",$storeId);
    $storeId = (int)$storeId;
    $where = array(
    'a.store_id' => $storeId,
    'a.goods_user_status' => 1,
    );
    //全部商品
    $goodsRes = Db('goods')
    ->alias('a')
    ->join('goods_class b','a.class_id = b.class_id','LEFT')//商品分类
    ->join('store_class c','a.store_class_id = c.class_id','LEFT')//店铺分类,在个人店铺里的
    ->field('a.* , b.class_name, c.class_name as store_class_name')
    ->where($where)
    ->order('goods_id desc')
    ->paginate(10);

    $this->assign([
    'seo_title'=> '店铺商品-' . config('site.WEB_TITLE'),
    'seo_keywords'=> config('site.WEB_KEYWORDS'),
    'seo_desc'=> config('site.WEB_DESCRIPTION'),
    'goodsRes' => $goodsRes,
    ]);
    return $this->fetch('seller_goods/index');
    }

  • 相关阅读:
    json
    mybatis 一对一关联对象查询
    下拉框多级联动
    时间轴和操作元素属性
    上传
    多选框获取和全选
    字符串操作,截取最后一个逗号
    idea快捷键使用
    获取下拉框的文本和值,下拉框默认选中
    toString()函数分析
  • 原文地址:https://www.cnblogs.com/seanpan/p/11365546.html
Copyright © 2011-2022 走看看