1

MySQL の初心者であり、まとめようとしているステートメントのロジックを理解するのに十分ではありません。

このクエリがあります。

SELECT FORMAT(SUM(won/total*100),2) AS PCT FROM table_name WHERE Status='Current'

すべてのレコードの合計の win% を返すにはどれがうまくいきますが、結果を行ごとに返したいと思っていますか?

基本的に私が達成しようとしているのは、を使用 して各行SELECT *の win% ですが、 SELECT * をパーセンテージの計算と組み合わせて使用​​することはできません。

または、おそらくロジックが間違っている可能性がありますが、わかりません。

返される結果は次のようになります。

Manager | Win%

Arsene Wenger | 57.24%

Alex Ferguson | 48.02%

私は何が欠けていますか?

4

3 に答える 3

2

このクエリを試してください:

SELECT Manager,FORMAT(SUM(won/total*100),2) AS PCT 
FROM table_name 
WHERE Status='Current'
GROUP BY Manager

各行が必要な場合

SELECT Manager,FORMAT((won/total*100),2) AS PCT 
FROM table_name 
WHERE Status='Current'
于 2013-04-11T11:12:57.553 に答える
1

次のように、人の名前で行をグループ化する必要があります

SELECT FORMAT(SUM(won/total*100),2) AS PCT FROM table_name WHERE Status='Current' group by manager ;

于 2013-04-11T11:12:47.870 に答える
1

GROUP BYステートメントがありません。または、すべての
行 の %-age を返したくない場合は、返されたすべての行が合計で集計されるため、削除する必要があります。SUM

于 2013-04-11T11:12:10.760 に答える