Laravel 5.3 i 5.4 domyślnie używają trybu ścisłego dla mysql. Oznacza to, że ONLY_FULL_GROUP_BY
Tryb SQL jest również włączony. Ale jeśli twoja wersja MySQL to co najmniej 5.7.5, możesz pogrupować według klucza podstawowego tabeli i użyć wszystkich kolumn z tej tabeli w klauzuli SELECT, ponieważ są one funkcjonalnie zależne od PK.
Twoje opcje to:
Zaktualizuj MySQL do co najmniej 5.7.5
Lub wyłącz tryb ścisły w konfiguracji db laravels (config/database.php
)
// ..
'connections' => [
// ..
'mysql' => [
// ..
'strict' => false,
// ..
],
// ..
]
Aktualizacja
Zła wiadomość dla użytkownika MariaDB (i xampp):MariaDB wydaje się nie obsługiwać "wykrywania zależności funkcjonalnej" (jeszcze). Wszystko, co mogłem znaleźć, to ten bilet .