thinkphp 高级查询写法,通二级分类名称查询三级商品,通过where直接写function



$subName = '二级分类名称1,二级分类名称2,二级分类名称3';
$subCatIds = DB::name('goods_category')->where('name', 'in', $subName)->column('id');
//通过二级分类名称查询三级的
$where['a.cat_id'] = ['in', function ($query) use ($subCatIds) {
    $query->table('tp_goods_category')
        ->where('parent_id', 'in', join(',',$subCatIds))
        ->whereOr('id', 'in', $subCatIds)
        ->field('id');
}];


评论/留言