2017-06-20 2 views
0

Hier ist meine Abfrage, es funktioniert auf allen älteren Versionen.Laravel groupBy funktioniert nicht, Version 5.4.24

$data = DB::table('applicant') 
      ->groupBy('AppAffID') 
      ->get(); 

Fehler i erhalten ist:

SQLSTATE[42000]: Syntax error or access violation: 1055 'comloant_loantreeAPI.applicant.AppID' isn't in GROUP BY (SQL: select * from `applicant` group by `AppAffID`) 

ich die Datenbank ändern versucht haben:

Ich habe 'strenge' => false, um Datenbank-Konfig.

'mysql' => [ 
      'driver' => 'mysql', 
      'host' => env('DB_HOST', 'localhost'), 
      'port' => env('DB_PORT', '3306'), 
      'database' => env('DB_DATABASE', 'forge'), 
      'username' => env('DB_USERNAME', 'forge'), 
      'password' => env('DB_PASSWORD', ''), 
      'charset' => 'utf8', 
      'collation' => 'utf8_unicode_ci', 
      'prefix' => '', 
      'strict' => false, 
      'engine' => null, 
     ], 
+0

können Sie die Datenbank-Konfigurationsdatei zeigen? – Teun

+0

@Teun, ich habe es hinzugefügt – ALCHI

+0

Sind Sie sicher, dass Sie MySQL verwenden? Und nachdem Sie die Konfiguration geändert haben, haben Sie den Konfigurationscache gelöscht? 'php artisan config: clear' – Teun

Antwort

0

Was ist es, dass Sie mit dem groupBy erreichen wollen? Wenn Sie auf der AppAffID sortieren möchten, sollten Sie die orderBy statt wie so getan verwenden:

$data = DB::table('applicant') 
     ->orderBy('AppAffID', 'desc') //can also use 'asc' for ascending 
     ->get(); 
+0

Wenn ich sortBy benutze bekomme ich einen Fehler: BadMethodCallException Aufruf zu undefinierter Methode Illuminate \ Database \ Query \ Builder :: sortBy() – ALCHI

+0

aktualisierte Antwort, ich meinte' orderBy' – Teun