Laravel - "Syntax Error or Access Violation 1055 in Group By" - Solved

By Hardik Savani November 5, 2023 Category : Laravel

Yesterday i was working on my Laravel 5.4 application and when i use group by statement in query builder I found error like as bellow:


SQLSTATE[42000]: Syntax error or access violation: 1055 'admin.products.name' isn't in GROUP BY (SQL: select `products`.*, SUM(products_stock.stock) from `products` inner join `products_stock` on `products_stock`.`product_id` = `products`.`id` group by `products`.`id`)

I was thinking what will be error and why it comes. i thought maybe it comes from mysql. i just add following query using laravel builder as like bellow:

Laravel Query

$data = DB::table("products")

->select("products.*",DB::raw("SUM(products_stock.stock)"))

->join("products_stock","products_stock.product_id","=","products.id")

->groupBy("products.id")

->get();

But it's give me error as i add bellow. I searched on google and finally i found solution. You have to open batabase.php configuration file and we have to just "strict" equal to false. So do it like as bellow:

config/database.php

<?php

return [

.....

'connections' => [

......

'mysql'[

.....

'strict' => false,

.....

]

]

]

I hope it can help you...

Tags :
Shares