Laravel Eloquent の sql_mode=only_full_group_by との互換性のないエラーを解決する
Laravel Eloquent クエリでは、クエリに含まれるものGROUP BY 句の列に機能的に依存しない、SELECT リスト内の非集計列。この問題を解決するには、データベース接続設定で MySQL 厳密モードを無効にすることができます。
提供されているコード例では、クエリは store_id でグループ化され、updated_at で順序付けされていますが、id 列も選択リスト。 id は機能的にstore_id に依存していないため、集計せずに SELECT リストに含めることはできません。
エラーを解決するには、config/database のデータベース接続設定に次の構成を追加して、MySQL 厳密モードを無効にします。 .php ファイル:
'connections' => [ 'mysql' => [ // Behave like MySQL 5.6 'strict' => false, // Behave like MySQL 5.7 'strict' => true, ] ]
厳密モードを無効にすると、機能しない場合でも非集計列を SELECT リストに含めることができます。 GROUP BY 句の列に依存します。
追加の構成設定
厳密モードに関連するその他の構成オプションについては、Matt のブログ投稿を参照してください。シュタウファー:
以上がLaravel Eloquentの「sql_mode=only_full_group_byと互換性がありません」エラーを修正する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。