テーブルが次のようになっている場合、mysql で目的の結果を得るにはどうすればよいですか。
結果|年
1 |2011
2 |2011
1 |2011
0 |2011年
1 |2012
2 |2012
1 = 勝った、2 = 負けた、0 = 引き分け
毎年、このように複数の値を持つことができます。以下のような望ましい結果を得る方法がわかりません。
year won lost draw totalPlayed
2011 2 1 1 3
2012 1 1 0 2
次のクエリを試しましたが、目的の結果が得られません
select year,
league_types.league_name,
sum(if(result = 1,1,0)) as won,
sum(if(result = 0,1,0)) as draw,
sum(if(result = 4,1,0)) as noResult,
sum(if(result = 2,1,0)) as lost,
sum(if(result = 3,1,0)) as tied,
sum(if(result > 0 and result < 4,1,0)) as played
from match_score_card
inner join fixtures on match_score_card.match_id = fixtures.match_id
inner join league_types on fixtures.league_id = league_types.league_id
where
team_id = 1 group by year order by year desc