我有一张玩家表现表,我想要为每个玩家返回高分,并在其后面添加一个星号('*'),如果他们在获得此分数时没有出局。这是到目前为止,我已经建立了查询,但它给了我错误#1111:无效使用组功能MySQL错误#1111
SELECT player_id, players.name,
COUNT(*) AS matches,
SUM(score) AS runs,
(SELECT IF(is_out = 0, CONCAT(MAX(score),'*'), MAX(score)) FROM batting WHERE score = MAX(score)) AS high
FROM batting
RIGHT JOIN players ON batting.player_id = players.p_id
WHERE player_id <> 0
GROUP BY player_id
我已经看过其他时候这个错误已经到来了,它理应指示当是在MAX/MIN功能执行SUM函数,但我看不到的地方,这是我的查询
我要去哪里错了,我怎么会纠正这个,grma
我怀疑错误涉及从击球 –
选择MAX(分数)的子查询@Yottatron没有区别,如果我改变了'MAX(分数)'只是'score' IF函数 – user5697101
内当该子查询删除它执行得很好... –