sql >> Base de Datos >  >> RDS >> Mysql

Laravel 5.4 Raw no funciona como se esperaba pero funciona en mySQL

Laravel 5.3 y 5.4 usan el modo estricto para mysql por defecto. Eso significa que ONLY_FULL_GROUP_BY El modo SQL también está habilitado. Pero si su versión de MySQL es al menos 5.7.5, puede agrupar por una clave principal de una tabla y usar todas las columnas de esa tabla en la cláusula SELECT porque dependen funcionalmente del PK.

(Manejo de MySQL de GROUP BY )

Sus opciones son:

Actualice MySQL a al menos 5.7.5

O deshabilite el modo estricto en laravels db config (config/database.php )

// ..
'connections' => [
    // ..
    'mysql' => [
        // ..
        'strict' => false,
        // ..
    ],
    // ..
]

Actualizar

Malas noticias para el usuario de MariaDB (y xampp):MariaDB parece no admitir la "detección de dependencia funcional" (todavía). Todo lo que pude encontrar es este boleto .