MySQL count(col) 那 returns null
MySQL count(col) that returns null
我有 3 个表:
- 团队(id_team,姓名,id_season)
- Teams_Stats(id_stats、id_game、id_team、胜利、失败)
- 季节(id_season,名称,nbr_teams)
我正在尝试提取特定赛季(在本例中为 2015 年)每支球队的胜利次数。
这就是我目前所拥有的,但它 returns 对所有团队都是 0。
我的 SQL 语法:
SELECT T.name, count(a.victory) as Wins
FROM Teams T, Seasons S
LEFT JOIN
(SELECT TS.id_team, TS.victory FROM Teams_Stats TS WHERE TS.victory = 1) a
ON a.id_team = 'T.id_team'
WHERE T.id_season = S.id_season AND S.name = '2015'
GROUP BY T.nom
ORDER BY T.nom
我做错了什么?
谢谢:)
尝试将您的查询修改得有点像
SELECT T.name, count(TS.victory) as Wins
FROM Teams T
JOIN Seasons S ON T.id_season = S.id_season AND S.name = '2015'
LEFT JOIN Teams_Stats TS ON TS.id_team = T.id_team AND TS.victory = 1
GROUP BY T.name
ORDER BY T.name
我有 3 个表:
- 团队(id_team,姓名,id_season)
- Teams_Stats(id_stats、id_game、id_team、胜利、失败)
- 季节(id_season,名称,nbr_teams)
我正在尝试提取特定赛季(在本例中为 2015 年)每支球队的胜利次数。
这就是我目前所拥有的,但它 returns 对所有团队都是 0。
我的 SQL 语法:
SELECT T.name, count(a.victory) as Wins
FROM Teams T, Seasons S
LEFT JOIN
(SELECT TS.id_team, TS.victory FROM Teams_Stats TS WHERE TS.victory = 1) a
ON a.id_team = 'T.id_team'
WHERE T.id_season = S.id_season AND S.name = '2015'
GROUP BY T.nom
ORDER BY T.nom
我做错了什么?
谢谢:)
尝试将您的查询修改得有点像
SELECT T.name, count(TS.victory) as Wins
FROM Teams T
JOIN Seasons S ON T.id_season = S.id_season AND S.name = '2015'
LEFT JOIN Teams_Stats TS ON TS.id_team = T.id_team AND TS.victory = 1
GROUP BY T.name
ORDER BY T.name