2012-02-14 9 views
0

私はシンプルなフットボールデータベースを作成していますが、そのデータベースにはチームがUEFAでプレーしたいが、UEFAの勝利回数を数えたい。異なる値をフィルタリングしてカウントするMySQL

チームがUEFAを再生することができ、その結果は「勝つ "描く」または「

」失うのである必要があり、このクエリので、私はこのクエリを書きましたが、私はカウントステートメントを変更する必要がありますどのように私にはわからないことを行うために、 UEFAで行われている各チームの試合数を示します。適切な基準で

SELECT t.name, count(*) as Wins 
FROM Teams t, Matches m 
WHERE competion = 'UEFA' AND t.name = m.team 
GROUP BY t.name 

答えて

1

、それは次のようになります。私はあなたのSQL構文でエラーが発生している得た

SELECT t.name, count(*) as matches, 
sum(case when result = "win" then 1 else 0 end) as wins, 
sum(case when result = "draw" then 1 else 0 end) as draws, 
sum(case when result = "loss" then 1 else 0 end) as losses 
FROM Teams t, Matches m 
WHERE competion = 'UEFA' AND t.name = m.team 
GROUP BY t.name 
+0

を。sum(結果が '2行目の場合) – CanCeylan

+0

はい、私はあなたのMySQLサーバーのバージョンに対応するマニュアルをチェックしてください。それを持って、最初の行の末尾にカンマが必要です – CanCeylan

+0

あなたは正しいです。 – YXD

関連する問題