【发布时间】:2019-10-23 12:04:41
【问题描述】:
我的产品模型中有一个关系,它工作正常
self::where('products.id', '=', $id)
->select('products.category_id', 'main_categories.id as main_category_id')
->join('categories', 'products.category_id', '=', 'categories.id')
->join('main_categories', 'categories.main_category_id', '=', 'main_categories.id')
->first();
我已经把它替换为
self::where('products.id', '=', $id)
->select('products.category_id', 'categories.id as parent_id')
->join('categories', 'products.category_id', '=', 'categories.id')
->join('categories', 'categories.parent_id', '=', 'categories.id')
->first();
现在我得到这个错误
语法错误或访问冲突:1066 不是唯一的表/别名: '类别'(SQL:选择
products.category_id,categories.id作为parent_id来自products内部连接categoriesonproducts.category_id=categories.id内连接categories在categories.parent_id=categories.id其中products.id= 13 限制 1)
【问题讨论】:
-
您将加入
categories表两次。你期待吗? -
您将加入
categories表两次。这是你期待的吗?如果是,请通过简单添加->join('categories as category1', ........来添加别名 -
@SandeepSudhakaran 是的,我要加入类别表两次
-
->join('categories', 'categories.parent_id', '=', 'categories.id')检查此声明...为什么要加入categories和categories