数据库
首页 > 数据库> > mysql连接表-选择最新行

mysql连接表-选择最新行

作者:互联网

我有以下两个MySQL

表名

NAME_ID   NAME
1         name1
2         name2
3         name3

表状态

STATUS_ID    NAME_ID     TIMESTAMP
1            1           2010-12-20 12:00
2            2           2010-12-20 10:00
3            3           2010-12-20 10:30
4            3           2010-12-20 14:00

我想从表NAMES中选择所有信息,并从表STATUS中添加最新的对应TIMESTAMP列

结果

NAME_ID NAME     TIMESTAMP
1       name1    2010-12-20 12:00
2       name2    2010-12-20 10:00
3       name3    2010-12-20 14:00

卡在这一个上.
如何仅在较新的时间戳记上退出联接?

解决方法:

试试这个查询:

select n.NAME_ID ,  n.NAME , max(TIMESTAMP) as time from NAMES n left join 
STATUS s on s.NAME_ID = n.NAME_ID group by n.NAME_ID

标签:left-join,sql,mysql
来源: https://codeday.me/bug/20191105/1996142.html