JOIN 2个没有记录复制的表


JOIN 2 tables without records replication

我有两个表:

1:

id | name
1  | test
2  | test1

2.

id | related_id | additional
1  | 1          | 1         
2  | 1          | 2 

1个表中的id与2个中的related_id相关

如何在没有复制记录的情况下将1个表与2个表联接,因此结果将仅为第二个表中的1行(related_id和additional可以是任何)

id | name | related_id | additional
1  | test | 1          | 1
2  | test1| NULL       | NULL

更新如果我尝试在INNER/LEFT JOIN之后分组,结果是

id | name | related_id | additional
1  | test | 1          | 1

您可以使用主键对结果进行分组

select * 
from table1 left join table2
on table1.id = table2.related_id
group by table1.id

您可以使用加入

SELECT 
    *
FROM table1 as t1
LEFT JOIN (
        SELECT
            MAX(id),
            related_id
        FROM table2
    ) as t2
ON t1.id = t2.related_id