如何从另一张表的多条记录中选择一条记录?

时间:2019-02-06 02:59:54

标签: mysql sql

我有多个表, 表1:

ID    Name
1     Adam
2     Bob

...

表2:

ID    Visit
1     2019-01-01
2     2019-01-02
1     2019-01-03
1     2019-01-04
2     2019-01-04
1     2019-01-05

...

我想从表2获取表1中每个名称的最新访问,例如

Name    LastVisit
Adam    2019-01-05
Bob     2019-01-04

我尝试使用

select tbl1.name as "Name", MAX(tbl2.visit) as LastVisit
from table1 tbl1 join table2 tbl2 on tbl1.id=tbl2.id;

但是它不起作用,我应该怎么做?

1 个答案:

答案 0 :(得分:1)

您只需要一个group by

select t1.name, MAX(t2.visit) as LastVisit
from table1 t1 join
     table2 t2
     on t1.id = t2.id
group by t1.name;