SELECT player.name,player.handicap,
SUM(tournament_player.points) as total_points,
COUNT(tournament_player.player_id) as attendances
FROM player
INNER JOIN tournament_player ON player.id=tournament_player.player_id
GROUP BY player.id
ORDER BY SUM(tournament_player.points) DESC上面的工作很完美,但它也选择没有积分的球员。也就是说,他们的积分总数等于0。
如何添加这样的WHERE子句
WHERE SUM(tournament_player.points) > 0不管我把子句放在哪里,它总是在where子句附近给出一个错误:
SELECT player.name,player.handicap,
SUM(tournament_player.points) as total_points,
COUNT(tournament_player.player_id) as attendances
FROM player
INNER JOIN tournament_player ON player.id=tournament_player.player_id
GROUP BY player.id
WHERE SUM(tournament_player.points) > 0
ORDER BY SUM(tournament_player.points) DESC--更新--
谢谢你们俩!不知道有条款。工作说明:
SELECT player.name,player.handicap,
SUM(tournament_player.points) as total_points,
COUNT(tournament_player.player_id) as attendances
FROM player
INNER JOIN tournament_player ON player.id=tournament_player.player_id
GROUP BY player.id
HAVING SUM(tournament_player.points) > 0
ORDER BY SUM(tournament_player.points) DESC发布于 2018-02-28 21:51:05
在使用聚合列时,需要使用HAVING。
SELECT player.name,player.handicap,
SUM(tournament_player.points) as total_points,
COUNT(tournament_player.player_id) as attendances
FROM player
INNER JOIN tournament_player ON player.id=tournament_player.player_id
GROUP BY player.id
HAVING SUM(tournament_player.points) > 0
ORDER BY SUM(tournament_player.points) DESChttps://stackoverflow.com/questions/49039160
复制相似问题