我有两张桌子; dashboard_map_items和device_data_current。在dashboard_map_items中我有两个字段,id和命令,在device_data_current中我有三个字段id,命令,current_value。根据我的dashboard_map_items中的id和命令,我需要从device_data_current获取current_data。
现在我不知道从哪里开始。在我能够对id和命令进行硬编码并从device_data_current获取current_data之前,这对我来说不再适用,因为id和命令将来会被更改。
$currentValues = DeviceDataCurrent::where('map_id', 1)
->where('system_id', $system_id)
->where('command', 1)->where('id', 64)
->orderby('datetime', 'DESC')->take(1)->get();
这就是我为获取数据所做的工作。如果它有助于我使用laravel 4.2框架,但我不知道它与laravel有任何关系。这是纯粹的PHP。 任何帮助,将不胜感激。
答案 0 :(得分:0)
我找到了解决方案
$currentValues = DashboardMapItem::where('system_id', $system_id)
->select()->join('device_data_current', function($join){
$join->on('device_data_current.id', '=', 'dashboard_map_items.device_id');
$join->on('device_data_current.command', '=', 'dashboard_map_items.command');
})
->get();
dd($currentValues->toArray());