1

プレーヤーのパフォーマンスの表があり、各プレーヤーのハイスコアを返したいと思います。このスコアを達成している間にアウトでなかった場合は、その後にアスタリスク ('*') を追加します。これは私がこれまでに作成したクエリですが、エラー #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

4

2 に答える 2