2012-04-20 70 views
0

下面是一个例子表:如何计算出现给定字符串的2列中的实例数量?

games_table 
---------------------------------------------------- 
| home_team | away_team | game_outcome | 
---------------------------------------------------- 
| Chelsea | Arsenal |  Home wins | 
---------------------------------------------------- 
| Everton | Liverpool |  Away wins | 
---------------------------------------------------- 
| Arsenal | Chelsea |  Home wins | 
---------------------------------------------------- 

我需要的是时间“切尔西”的数字出现WHERE game_outcome = 'Home wins'这是2在这个例子中。

正常情况下应该很容易,但我坚持,因为我有搜索2列。 我真的需要一些见解。

+0

安德鲁已经回答了(正确恕我直言:))我仍然不知道为什么你想在你的例子2次切尔西主场1胜来算,因为在这种情况下,切尔西赢一次输了一次。 – YvesR 2012-04-20 13:14:32

+1

或者,也许你以后就是:'SELECT * FROM games_table摹WHERE(HOME_TEAM = '切尔西' AND game_outcome = '主场1胜')或(AWAY_TEAM = '切尔西' AND game_outcome = '客胜')' – 2012-04-20 13:17:03

+0

@YvesR 好问题。这是一个简单的例子,但确实我数出的胜负结果对于球队切尔西,给出的预测正确的预测数是“胜家”。 :) – Alternatex 2012-04-20 13:18:21

回答

3
SELECT COUNT(*) 
FROM games_table 
WHERE game_outcome = 'Home wins' 
AND (home_team = 'Chelsea' OR away_team = 'Chelsea') 
+0

谢谢。简单而优雅。 – Alternatex 2012-04-20 13:16:25

+0

'AND'Chelsea'IN(home_team,away_team)' – onedaywhen 2012-04-20 14:21:23

相关问题