Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如何从多个表中查询数据并显示每个设备相对于其最后工作日期的一条记录_Mysql - Fatal编程技术网

Mysql 如何从多个表中查询数据并显示每个设备相对于其最后工作日期的一条记录

Mysql 如何从多个表中查询数据并显示每个设备相对于其最后工作日期的一条记录,mysql,Mysql,嗨,我是mysql数据库新手,有人能帮我解决问题吗 我有三张这样的桌子 select * from device; Vehiclegroup vehicleName deviceid accountid ------------ ----------- -------- ----------- sms cargo test1 sysadmin sms cargo1 test2 sysadmi

嗨,我是mysql数据库新手,有人能帮我解决问题吗 我有三张这样的桌子

select * from device;
Vehiclegroup  vehicleName  deviceid  accountid  
------------  -----------  --------  -----------
sms           cargo        test1      sysadmin   
sms           cargo1       test2     sysadmin   
sms           cargo3       test3     sysadmin   
select * from Account;
accountid  password  deviceid  
---------  --------  ----------
sysadmin   pass      test3     
sysadmin   pass      test2     
sysadmin   pass      test1     
And finally 

mysql> select * from eventdata;
+-----------+-------+----------+----------+
| accountid | speed | date     | deviceid |
+-----------+-------+----------+----------+
| sysadmin  | 45    | 12/10/13 | test3    |
| sysadmin  | 45    | 10/10/13 | test3    |
| sysadmin  | 45    | 10/10/13 | test2    |
| sysadmin  | 45    | 11/10/13 | test2    |
| sysadmin  | 45    | 14/10/13 | test2    |
| sysadmin  | 45    | 17/10/13 | test2    |
| sysadmin  | 45    | 17/10/13 | test1    |
+-----------+-------+----------+----------+
7 rows in set (0.00 sec) 
这里我需要如下所示的输出表

vehiclegroup vehiclename deviceid date
sms              cargo1  test1  17/10/13
sms              cargo2  test2  17/10/13
sms              cargo3  test3  12/10/13
i、 e我需要每个设备上一个工作日期的数据 有人能帮上忙吗

SELECT d.Vehiclegroup, d.vehicleName, e.deviceid, e.date
FROM eventdata e
INNER JOIN device d ON e.deviceid = d.deviceid
GROUP BY e.deviceid
将为每个设备ID提供一条记录。 车辆组、车辆名称和日期可从列表中任意选择。
如果您想要最新的,您应该使用子查询或修饰符,如(MAX(e.date)as date)

感谢@Tom给予回复。ur查询显示每个记录,但我不想显示每个记录,即它显示用于测试(4条记录0和测试3(2条记录),但我只需要显示一条用于测试2(17/10/13)和测试3(12/10/13)的记录仅记录可为其提供u post示例