Mysql 左连接,如何从右指定一个结果?

Mysql 左连接,如何从右指定一个结果?,mysql,sql,left-join,Mysql,Sql,Left Join,这是一个相当具体的问题,所以我希望能快速解决 我在每个团队的排行榜表格中都有一个结果。在我的团队表中,我对每个团队都有几个结果(每场比赛一个结果以启用团队开发历史记录) 我想在排行榜上显示每个团队一次,并将teamID替换为strName。问题是,我的左会合给了我一个团队结果的记录;我只想要一张唱片 SELECT * , a.strName AS teamName FROM bb_leaderboards l LEFT JOIN bb_teams a ON ( l.teamID = a.

这是一个相当具体的问题,所以我希望能快速解决

我在每个团队的排行榜表格中都有一个结果。在我的团队表中,我对每个团队都有几个结果(每场比赛一个结果以启用团队开发历史记录)

我想在排行榜上显示每个团队一次,并将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的输出?

您可以使用SELECT DISTINCT,但您必须缩小SELECT的范围。因此:

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

这将过滤掉重复项。

如果是1:1关系,则数据必须反映这一点。无法获取SQL语句来修复错误数据。如果一个l.teamID有多个a.ID,则没有有效的方法来执行此操作,因此我不能将连接部分“限制”为1个结果?我尝试了在主选择栏上的“分组依据”,但数据不正确:/谢谢你的回答-我太新了,无法代表你,抱歉。