简体   繁体   English

MySQL从表1中检索最后一条记录,并从表2中检索数据

[英]MySQL Retrieving last record from table1 and join data from table 2

I have two table (below codes) , want to retrieve last row of trackers_data table and GROUP BY tracker_id and (join) information of each tracker_id from Table Devices 我有两个表(下面的代码),想要检索trackers_data表的最后一行和GROUP BY tracker_id并从表Devices tracker_id每个tracker_id GROUP BY tracker_id 信息

Devices/Table: 设备/表:

        /*Table: devices*/
id  tracker_id  name        device_name
-----------------------------------
1   1242        Driver A    Benz
2   1255        Driver B    Volvo
3   1256        Driver C    BMW

Trackers_data/Table: Trackers_data /表:

     /*Table: trackers_data*/
id  tracker_id  longitude   latitude
-------------------------------------
5       1255    53.25       11.52
6       1255    52.63       11.63
7       1242    52.23       13.11
8       1242    52.25       15.27
9       1242    54.63       13.86

Example/Results should like below : 示例/结果应如下所示:

     /* Results */
id  tracker_id  lonitude    latitude    name        device_name
6   1255        52.63       11.63       Driver B    Volvo
9   1242        54.63       13.86       Driver C    BMW

You can use this solution: 您可以使用以下解决方案:

SELECT b.*, c.name, c.device_name
FROM   (SELECT MAX(id) AS id FROM trackers_data GROUP BY tracker_id) a
JOIN   trackers_data b ON a.id = b.id
JOIN   devices c ON b.tracker_id = c.tracker_id

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM