**已关闭。**此问题为not reproducible or was caused by typos。它目前不接受答案。
这个问题是由打字错误或不能再复制的问题引起的。虽然类似的问题在这里可能是on-topic,但这个问题的解决方式对未来的读者不太可能有帮助。
昨天关门了。
Improve this question
select sum(orderinfo.orderamount) as total, userinfo.username
from orderinfo
left join userinfo on orderinfo.userid = userinfo.userid
group by orderinfo.userid
order by total desc
表格orderinfo:
userid
orderamount
表用户信息:
userid
username
我需要搜索前10名最常购买的用户与他们的名字。
但我得到了这样的错误:
MSG 8120,Level 16,State 1,Line 1
列‘userinfo.username’在选择列表中无效,因为它既未包含在聚合函数中,也未包含在GROUP BY子句中。
我正在使用SSMS。我一定是做错了什么……请帮帮我
谢谢
1条答案
按热度按时间92dk7w1h1#
不能既按
userid
聚合,又选择username
。这里最快的解决方法是同时聚合userid
和username
: