通过Group By + min方法取得表B中分组后的多条记录中某个字段(一般使用主键或者不重复的列)值最小的记录,然后表A和表B做外连接
select a.id, a.name
from a
left join (select id, name
from b
inner join (select id, min(key) as key from b group by id) c on b.key =
c.key
and b.id = c.id) b on a.id = b.id