左连接,如何从右边指定1个结果?

时间:2011-09-21 18:13:08

标签: mysql sql left-join

这个是相当具体的,所以我希望快速解决。

我在每个团队的排行榜中都有一个结果。在我的团队表中,我为每个团队提供了几个结果(每个游戏一个结果,以启用团队开发历史记录)。

我想在排行榜中显示每个团队一次,并将teamID替换为strName。问题是,我的左连接给了我一个记录每个团队的结果;我只想要一条记录。

    SELECT * , a.strName AS teamName
FROM bb_leaderboards l
LEFT JOIN bb_teams a ON ( l.teamID = a.ID )
WHERE l.season =8
AND l.division =1
ORDER BY l.division DESC , points DESC , wins DESC , l.TDdiff DESC
LIMIT 0 , 30

我需要做些什么来获得1:1的输出?

1 个答案:

答案 0 :(得分:1)

您可以改为使用SELECT DISTINCT,但是您必须缩小选择范围。所以:

SELECT DISTINCT l.*, a.strName AS teamName 
...

那应该过滤掉重复的内容。