MySql 在 laravel 5.4 中使用内部联接和计数进行查询

MySql query in laravel 5.4 with inner join and count

我的 sql 查询在 phpmyadmin 中显示正确但是当我在 laravel 5.4 项目中使用它时它显示错误

SQLSTATE[42000]: Syntax error or access violation: 1055 'project_management.addprojects.id' isn't in GROUP BY (SQL: SELECT DISTINCT addprojects.id,addprojects.emp_id,sum(tasks.task_weight),tasks.flag from addprojects JOIN tasks ON tasks.proj_id = addprojects.id GROUP BY tasks.proj_id )

DB::select(" SELECT DISTINCT addprojects.proj_name,addprojects.id,
   addprojects.emp_id,sum(tasks.task_weight),tasks.flag from addprojects 
  JOIN tasks ON tasks.proj_id = addprojects.id GROUP BY tasks.proj_id ");

因为Laravel使用了严格模式。您可以从 config/database.php 禁用它,您将在 mysql 数组配置 [=12] 中看到=]

'strict' => true,

将其设置为 false,您的查询将起作用

进一步了解严格SQL模式来自here