根据表A查询表B、表C、表D中数据

表A为设备信息表

表A字段有 id,name,position,type
type为类型,不同类型数据记录在表B、表C、表D中
position为设备编码

表B为类型b的数据记录表

表B字段有id,position,datetime,value

表C为类型c的数据记录表

表C字段有id,position,datetime,value

表D为类型d的数据记录表

表D字段有id,position,datetime,value

想获取每个设备的最新数据情况,如下,如何写sql语句?

img

请求,多谢

既然BCD数据结构一致
那么先把它们union all在一起,然后结果集统一left join A即可
如果数据量太大,那么筛选条件需要分别写到每个表的select后面,再union all,以节省时间