【发布时间】:2023-04-07 11:09:01
【问题描述】:
我收到以下错误代码:
错误代码:1055。ORDER BY 子句的表达式#1 不在 GROUP BY 子句中,并且包含在功能上不依赖于 GROUP BY 子句中的列的非聚合列“usergrowthhomework.weblogs.day”;这与 sql_mode=only_full_group_by 不兼容
此代码是我尝试运行以下查询的结果,该查询应该返回 2020 年每个月出现“推荐人”的次数:
SELECT MONTH(day) MONTH, referrer, COUNT(referrer) AS cumulative_pageviews
FROM weblogs
WHERE YEAR(day) >= '2020'
GROUP BY MONTH(day), referrer
ORDER BY day, referrer;
我的表格的列如下所示:
user_no - int 名称 - varchar(200) 推荐人 - varchar(200) start_date - 时间戳 日期 - 日期
谁能解释我为什么会收到这样的错误?我清楚地在 GROUP BY 和 SELECT 子句中包含了所有适当的表达式。
我正在使用 MySQL 工作台运行此查询。
【问题讨论】: