【发布时间】:2026-01-27 18:00:01
【问题描述】:
这里是SQLZOO Join https://sqlzoo.net/wiki/The_JOIN_operation上第11题的表格链接和详细说明。
问题是询问'对于每场涉及'POL'的比赛,显示比赛ID、日期和进球数。'
下面是我的 SQL 代码
SELECT matchid, mdate, COUNT(player)
FROM game JOIN goal ON id = matchid
WHERE (team1 = 'POL' OR team2 = 'POL')
GROUP BY matchid
错误消息是'gisq.game.mdate' isn't in GROUP BY。结果在我的代码的最后一行我必须做GROUP BY matchid, mdate。
我现在正在学习 SQL,谁能帮我理解为什么我必须同时按 matchid 和 mdate 而不是其中一个分组?
提前感谢您的热心帮助。
【问题讨论】:
-
请注意,手册对此进行了深入介绍。
-
这是一个常见问题解答。请在考虑发布之前阅读您的教科书和/或手册和谷歌任何错误消息或您的问题/问题/目标的许多清晰、简洁和精确的措辞,有和没有您的特定字符串/名称和站点:*.com 和标签;阅读许多答案。如果您发布问题,请使用一个短语作为标题。反映你的研究。请参阅How to Ask 和投票箭头鼠标悬停文本。
标签: mysql sql join group-by aggregate-functions