In aggregated query without GROUP BY, expression #1 of SELECT list contains nonaggregated column 'text.s3.SId'; this is incompatible with sql_mode=only_full_group_by > 时间: 0s
时间: 2023-11-03 22:47:56 浏览: 41
这个错误是因为在你的聚合查询中,SELECT列表中的表达式不包含在GROUP BY子句中,并且你的MySQL的sql_mode设置为only_full_group_by模式。在这种模式下,非聚合表达式必须包含在GROUP BY子句中,否则会报错。
要解决这个问题,你可以按照以下方法之一操作:
1. 将表达式添加到GROUP BY子句中,以满足only_full_group_by模式的要求。例如,如果你的查询是这样的:
SELECT s3.SId, AVG(s3.Score)
FROM text
WHERE s3.Score > 80
GROUP BY s3.SId;
你可以将它修改为:
SELECT s3.SId, AVG(s3.Score)
FROM text
WHERE s3.Score > 80
GROUP BY s3.SId, other_column;
其中other_column是你想要添加到GROUP BY子句中的其他列。
2. 如果你不需要对结果进行分组,只需要进行聚合计算,你可以修改MySQL的sql_mode设置,以允许非聚合表达式不需要包含在GROUP BY子句中。可以使用以下语句修改sql_mode:
SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
这将禁用only_full_group_by模式,并允许非聚合表达式不包含在GROUP BY子句中。
请注意,修改sql_mode设置可能会影响其他查询的行为,因此在进行更改之前,请确保了解可能的影响。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![ips](https://img-home.csdnimg.cn/images/20210720083646.png)
![ips](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![ips](https://img-home.csdnimg.cn/images/20210720083646.png)
![ips](https://img-home.csdnimg.cn/images/20210720083646.png)