首页 > 解决方案 > 如何修复'列在选择列表中无效,因为它不包含在聚合函数或 GROUP BY 子句中

问题描述

我正在使用我创建的数据库编写一个简单的程序,但我遇到了一个问题,我试图确定出现次数最多的推荐人 ID,同时还显示客户信息

SELECT TOP (3) referrer_id,
    COUNT(referrer_id) AS value_occurance,
    customer_id, 
    CONCAT(first_name, ' ', last_name) AS full_name
FROM customer
GROUP BY referrer_id
ORDER BY value_occurance DESC

这是我的查询。

选择列表中的“customer.customer_id”列无效,因为它既不包含在聚合函数中,也不包含在 GROUP BY 子句中。

这是我收到的错误。

标签: sqlsql-server

解决方案


解决此问题的一种方法是添加customer_id到您的GROUP BY, 所以GROUP BY referrer_id, customer_id


推荐阅读