2012-02-14 2 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

을;합계 (결과가 '라인 2 일 때) – CanCeylan

+0

예 (결과가'승리 ', 그 다음 1이 끝나는 경우) 근처에서 사용할 올바른 구문에 대해서는 MySQL 서버 버전에 해당하는 매뉴얼을 확인하십시오. 그것을 얻었습니다. 첫 번째 줄 끝에 쉼표가 필요합니다. – CanCeylan

+0

당신은 맞습니다. – YXD

관련 문제