我已经用分页编写了这个查询
$items = Item::select('items.*', 'sub_category_name', 'category_name', 'sub_category_slug', 'category_slug')
->join('sub_categories AS sc', 'sc.sc_id', 'items.sub_category_id')
->join('categories AS c', 'c.category_id', 'sc.category_id')
->where('items.is_active', '=', 1)
->where('sc.is_active', '=', 1)
->where('c.is_active', '=', 1)
->where('sc.sc_id', '=', $sub_category_id)
->paginate(1);
Run Code Online (Sandbox Code Playgroud)
但它说
语法错误或访问冲突:1140如果没有GROUP BY子句,则GROUP列(MIN(),MAX(),COUNT(),...)的混合没有GROUP列是非法的
但是,当我添加->groupBy('item_id');它说
语法错误或访问冲突:1055'books.items.item_name'不在GROUP BY中
但是当我在groupBy子句中执行item_name时,它会将groupBy称为下一列.为什么?