Laravel错误:1140混合的GROUP列(MIN(),MAX(),COUNT() [英] Laravel error: 1140 Mixing of GROUP columns (MIN(),MAX(),COUNT()
本文介绍了Laravel错误:1140混合的GROUP列(MIN(),MAX(),COUNT()的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
熟悉此Laravel错误的人:
Anyone familiar with this Laravel Error:
"SQLSTATE [42000]:语法错误或访问冲突:1140如果没有GROUP BY子句,则将GROUP列(MIN(),MAX(),COUNT(),...)与GROUP列混合使用是非法的(SQL:选择办公室,从
feedback
选择avg(q1)作为q1,平均avg(q2)作为q2)"
"SQLSTATE[42000]: Syntax error or access violation: 1140 Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause (SQL: select office, avg(q1) as q1, avg(q2) as q2 from
feedback
)"
这是我的控制器代码:
$feedback_data = DB::table('feedback')
->select(DB::raw('office, avg(q1) as q1, avg(q2) as q2'))
->get();
return view('/feedback/index')->with('feedback_data', $feedback_data);
推荐答案
您必须使用groupBy()
:
$feedback_data = DB::table('feedback')
->select(DB::raw('office, avg(q1) as q1, avg(q2) as q2'))
->groupBy('office')
->get();
这篇关于Laravel错误:1140混合的GROUP列(MIN(),MAX(),COUNT()的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文