相关疑难解决方法(0)

在MySql中执行查询时与only_full_group_by相关的错误

我已经升级了我的系统,并为我正在处理的Web应用程序安装了MySql 5.7.9和php.我有一个动态创建的查询,当在旧版本的MySql中运行时,它可以正常工作.自升级到5.7后,我收到此错误:

SELECT列表的表达式#1不在GROUP BY子句中,并且包含非聚合列'support_desk.mod_users_groups.group_id',它在功能上不依赖于GROUP BY子句中的列; 这与sql_mode = only_full_group_by不兼容

请注意有关服务器SQL模式主题的Mysql 5.7的手册页.

这是给我带来麻烦的查询:

SELECT mod_users_groups.group_id AS 'value', 
       group_name AS 'text' 
FROM mod_users_groups
LEFT JOIN mod_users_data ON mod_users_groups.group_id = mod_users_data.group_id 
WHERE  mod_users_groups.active = 1 
  AND mod_users_groups.department_id = 1 
  AND mod_users_groups.manage_work_orders = 1 
  AND group_name != 'root' 
  AND group_name != 'superuser' 
GROUP BY group_name 
HAVING COUNT(`user_id`) > 0 
ORDER BY group_name
Run Code Online (Sandbox Code Playgroud)

我在这个问题上做了一些谷歌搜索,但我不明白only_full_group_by弄清楚我需要做些什么来修复查询.我可以关掉这个only_full_group_by选项,还是我需要做些什么呢?

如果您需要更多信息,请与我们联系.

mysql sql group-by mysql-error-1055

394
推荐指数
13
解决办法
50万
查看次数

小组不工作 - Laravel

我无法在Laravel 5.3中运行这个简单的查询

$top_performers = DB::table('pom_votes')
        ->groupBy('performer_id')
        ->get();
Run Code Online (Sandbox Code Playgroud)

它给了我:

SQLSTATE[42000]: Syntax error or access violation: 1055 'assessment_system.pom_votes.id' isn't in GROUP BY (SQL: select * from `pom_votes` group by `performer_id`)
Run Code Online (Sandbox Code Playgroud)

但是,如果我从错误中复制原始查询并直接在PhpMyAdmin中触发,它可以正常工作.

我已经检查了这个:

https://laravel.com/docs/5.3/queries#ordering-grouping-limit-and-offset

任何帮助将是appricaited.

谢谢,

Parth Vora

query-builder laravel laravel-5.3

25
推荐指数
4
解决办法
3万
查看次数

MySQL:不在GROUP BY中

该站点生成结果,但SELECT COUNT和SELECT查询与GROUP BY有两个不同的结果计数.这可能是由于phpmyadmin中显示的错误而不是网站上显示的错误.

查询:

SELECT count(DISTINCT `name`) as `numrows` FROM `users` WHERE `verified` = '1'

SELECT `name`, `type`, `language`, `code` FROM `users` WHERE `verified` = '1' GROUP BY `name` ORDER BY `count` DESC LIMIT 0, 25
Run Code Online (Sandbox Code Playgroud)

PhpMyAdmin提供以下错误:

1055 - 'main.users.type'不在GROUP BY中

在阅读MySQL文档时,我仍然不清楚我必须解决的问题.我似乎无法掌握这一点.

mysql sql phpmyadmin mysql-error-1055

19
推荐指数
2
解决办法
5万
查看次数