0
laravel 5.3でrawクエリを実行しようとしています。クエリはシンプルですが、エラーが発生しています。laravel 5.3でrawクエリを実行しています。
table name: users
columns: id|name|email|phone|created_at|updated_at
私のクエリ:私はphpMyAdminの上でこれを実行すると
SELECT created_at AS member_since, count(*) as row_count
FROM users
GROUP by MONTH(created_at);
この生のクエリは正常に動作します。しかし、私はlaravelのデータベースクエリビルダーを使用してこれを実行するとエラーが発生します。ここ
SQLSTATE[42000]: Syntax error or access violation: 1055
'query.users.created_at' isn't in GROUP BY
SQLSTATE[42000]: Syntax error or access violation: 1055
'query.users.created_at' isn't in GROUP BY (SQL: select created_at AS
member_since from `users` group by MONTH(created_at))
は私のコントローラです:
$users = DB::table('users')
->select(DB::raw('created_at AS member_since', 'count(*) AS row_count'))
->groupBy(DB::raw('MONTH(created_at)'))
->get();
return response()->json($users);
Imが間違っているなら、私を修正してください。生のクエリを実行するためのより良い方法はありますか?