今天在使用 laravel DB 查詢的時候報錯錯誤如下:
SQLSTATE[42000]: Syntax error or access violation: 1055 **** isn't in GROUP BY ...
Sql 如下:
$data = DB::table('*********')->groupBy(DB::raw("date_format(order_addtime,'%Y-%m-%d')"))->get();
報錯原因:
在 laravel 專案中 config\database.php
配置資料夾 "mysql"
陣列中
預設 'strict' => true
,啟用了嚴格模式。將該引數改為 false即可。
解決
'strict' => false,
TODO
- 瞭解什麼是嚴格模式,以及嚴格模式下為什麼 group 會報錯,如何使用才不會觸發錯誤。2020-05-25
本作品採用《CC 協議》,轉載必須註明作者和本文連結