当前位置:首页 > 要闻简讯 > 数码科技问答 > 正文

MySQL 5.7 运行 SQL 报错 1055 🚀

发布时间:2025-04-01 17:21:44 编辑:堵琛行 来源:

导读 在使用 MySQL 5.7 数据库时,偶尔会遇到运行 SQL 查询时出现 `1055` 错误的情况。这个错误通常表现为 `Expression 1 of SELECT...

在使用 MySQL 5.7 数据库时,偶尔会遇到运行 SQL 查询时出现 `1055` 错误的情况。这个错误通常表现为 `Expression 1 of SELECT list is not in GROUP BY clause and contains nonaggregated column`,意味着查询中存在未分组的非聚合列。😭

问题的核心在于 SQL 模式设置,默认情况下,MySQL 5.7 启用了 `ONLY_FULL_GROUP_BY` 模式,这要求所有出现在 `SELECT` 或 `HAVING` 子句中的表达式必须被包含在 `GROUP BY` 子句中,或者用聚合函数包裹(如 `SUM()`、`COUNT()` 等)。🤔

解决方法非常简单:可以通过修改 SQL 模式来放松限制。例如,在配置文件中添加以下

```sql

SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));

```

或者直接在当前会话中执行:

```sql

SET SESSION sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));

```

完成设置后,重新运行 SQL 查询即可正常执行。🌟 如果不想修改全局设置,建议检查 SQL 语句逻辑,确保符合严格的分组规则。数据库的严谨性值得重视!💪


免责声明:本文由用户上传,如有侵权请联系删除!

上一篇:💻✨Win7电脑的开始菜单不见了?别慌,轻松搞定!✨💻

下一篇:最后一页