文档章节

[Err] 1055 - Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated colum

yizhichao
 yizhichao
发布于 2017/04/07 13:35
字数 416
阅读 200
收藏 0

今天视频平台有一个统计查询失败

SELECT
	s.schoolName,
	s.classname,
	count(s.resourceId) AS count
FROM
	tbl_school_class_lens_info s,
	tbl_player_statistics p
WHERE
	s.resourceId = p.resourceId
GROUP BY
	s.resourceId

[Err] 1055 - Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated colum

官方说法

https://dev.mysql.com/doc/refman/5.7/en/group-by-handling.html

查询mysql 相关mode

[root@localhost home]# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1147
Server version: 5.7.16 MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 
mysql> 
mysql> show variables like '%sql_mode%'
    -> ;
+---------------+-------------------------------------------------------------------------------------------------------------------------------------------+
| Variable_name | Value                                                                                                                                     |
+---------------+-------------------------------------------------------------------------------------------------------------------------------------------+
| sql_mode      | ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION |
+---------------+-------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> select version(), @@sql_mode;
+-----------+-------------------------------------------------------------------------------------------------------------------------------------------+
| version() | @@sql_mode                                                                                                                                |
+-----------+-------------------------------------------------------------------------------------------------------------------------------------------+
| 5.7.16    | ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION |
+-----------+-------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> exit

 

发现 里面 有  ONLY_FULL_GROUP_BY , 所有将其去掉

sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'

 

[root@localhost ~]# cat /etc/my.cnf
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html

[mysqld]
sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
#skip-grant-tables
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

[client]
socket =/var/lib/mysql/mysql.sock

 

然后重启mysql

[root@localhost ~]# service mysqld stop
Redirecting to /bin/systemctl stop  mysqld.service

[root@localhost ~]# 
[root@localhost ~]# service mysqld start
Redirecting to /bin/systemctl start  mysqld.service
[root@localhost ~]# 

 

© 著作权归作者所有

共有 人打赏支持
yizhichao

yizhichao

粉丝 13
博文 401
码字总数 305790
作品 0
南京
程序员
MySQL 5.7.9版本sql_mode=only_full_group_by问题

SQLSTATE[42000]: Syntax error or access violation: 1055 Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'gambling.team_odds_match.league......

在下头真的很硬
2017/10/27
0
0
ubuntu16.04 mysql group报错ERROR 1055 (42000): Expression #1

ubuntu16.04 apache2.4 php7.0 mysql5.7 $ordergoods=db('ordergoods')->where('orderid','in',$orderidarr)->group('orderid')->having('id>0')->select();echo db('order_goods')->getLast......

Marhal
03/27
0
0
连接云端mysql数据库 查询报错

SQL: SELECT a.orderno orderno, a.createtime createTime, ui.name name, a.orderstatus orderStatus, a.ordertype orderType, groupconcat(op.productname separator '/') productName, a.......

黑夜的昼
2016/08/03
285
1
MySQL Mode 二三事

MySQL Mode 二三事 这两天一直忙着迁移服务器,数据库,遇上这样或者那样的小故障。 在这里也随笔记一下。 1. 故事背景 由于部分阿里云RDS数据库过期,再加上相关费用问题,所有公司决定只有...

Adam_DENG
2016/11/15
13
0
mysql遇见Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggre的问题

Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column ‘sss.month_id’ which is not functionally dependent on columns in GROUP BY clause; thi......

啃不动地大坚果
03/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

bat强制启用宏

运行bat文件后,将宏的安全等级设为低,达到启用宏的目的。 REM 这个文件将提供用户快速设置Excel宏的安全等级@ECHO OFFCLS:cmd4REG ADD "HKEY_CURRENT_USER\Software\Mi...

tedzheng
4分钟前
0
0
流,用声明性的方式处理数据集 - 读《Java 8实战》

引入流 Stream API的代码 声明性 更简洁,更易读 可复合 更灵活 可并行 性能更好 流是什么? 它允许以声明方式处理数据集合 遍历数据集的高级迭代器 透明地并行处理 简短定义:从支持数据处理...

yysue
5分钟前
0
0
postman发送json格式的post请求

postman发送json格式的post请求 在地址栏里输入请求url:http://127.0.0.1:8081/getmoney 选择“POST”方式, 在“headers”添加key:Content-Type , value:application/json 点击"body",''ra...

两广总督bogang
12分钟前
0
0
Javascript将html转成pdf,下载(html2canvas 和 jsPDF)

最近碰到个需求,需要把当前页面生成pdf,并下载。弄了几天,自己整理整理,记录下来,我觉得应该会有人需要 :) 项目源码地址:https://github.com/linwalker/render-html-to-pdf html2ca...

孟飞阳
13分钟前
0
0
pureftp源码编译及设定

--- use for RHEL 567 and Ubuntu 1604 1. download pureftpd wget http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.47.tar.bz2 2. install gcc #apt-get install -y li......

zzimac
15分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部