mysql - 工作台 - 错误 : aggregates not allowed in GROUP BY clause

标签 mysql sql group-by

我在网站上发现了其他几个有此错误消息的线程,但那里的解决方案似乎对我不起作用。

这是我要运行的查询:

SELECT 
    o.name as Name, 
    o.vrank_tav__c as Vrank,
    COUNT(c.enterprise_id) AS #_users_enterprise
FROM 
    (community_csv_james c JOIN 
    salesforce_data_opportunity o ON
c.enterprise_id = o.enterprise_id__c)
GROUP BY #_users_enterprise, Name, Vrank
ORDER BY #_users_enterprise DESC;

当我在 SQL Workbench J 上运行它时,出现以下错误:

SELECT 
    o.name as Name, 
    o.vrank_tav__c as Vrank,
    COUNT(c.enterprise_id) AS #_users_enterprise
FROM 
    (community_csv_james c JOIN 
    salesforce_data...

ERROR: aggregates not allowed in GROUP BY clause

我已经尝试了一些变体,但我提出了不同的错误消息。我应该如何编写此查询?

谢谢!

最佳答案

您不应该将聚合函数(您的 Count())的结果包含在分组依据中。该计数将与一个不同的名称/Vrank 相关联,因此您只需要对这些进行分组。这就是它给您特定错误的原因。

GROUP BY Name, Vrank

MySQL documentation for GROUP BY

关于mysql - 工作台 - 错误 : aggregates not allowed in GROUP BY clause,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37625014/

相关文章:

php - MySQL 拒绝带有 ON DELETE SET NULL 但不是 ON DELETE CASCADE 的列

SQL 使用字符串类型的列检查当前日期,该列以 MMDD 格式存储日期不是 120 天前

apache-spark - 我们应该在 dataframe 上使用 groupBy 还是 reduceBy

mysql - MySQL触发器中的IF语句

javascript - $(selector).each 在 Laravel 的表行上

MySQL 删除子查询需要数百秒,而选择查询成本要低得多

php - 在一个表中,查看某个 ID 是否有一天中每一分钟的行 - 如何优化此查询?

sql - 甲骨文朱利安一天

具有 3 个表的左连接、计数和分组的 MySQL 查询

sql - 查找满足条件但不四舍五入的行的百分比