现在有三个表A(a,b) B(a,c) C(a,d) 结果集D(a,b,c,d)
a是时间 查询的a在某一个范围m-n之内 m-n内的每一分钟都会对应一个时间a*,
如果A,B,C中没有a*点对应的数据 那么查询的结果集D在a*的结果就为D(a*,null,null,null)
如果a*只在A表中有数据,那D在a*的结果就为D(a*,b,null,null),以此类推
现在的方法是根据m-n查询三个表的数据,然后把三个表的数据放入到map中.map的key是m-n中每一分钟对应的时间a*, value是a*的值.如果a*对应的时间点查询的数据为空,map里面放的数据就是map.put(a*,null).然后再循环数据,用map[A\B\C].getKey(a*) 取出对应的值.
这个方法感觉有缺陷,个人认为在sql语句查询的时候就可以直接拿到想要的结果。