听见温暖www 2019-08-09 16:26 采纳率: 100%
浏览 569
已采纳

查多个电表 某时间段 开始时间和结束时间的值(mysql)

存电表的表(from):
EMeterID(电表的ID)

第二张数据表(form1) 存每个电表各时间点的数据
EMeterID ,Time(时间),data(数据);

需求:
给定开始时间(beginTime),结束时间(endTime),
查所有电表 开始时间和结束时间的数据,

注意::(如果表中没有开始时间对应的数据,就找大于开始时间的最接近开始时间的数据;没有结束时间的话,就找小于结束时间的最接近结束时间的数据)

例如:表一有3条数据分别为EMeterID=1,2,3
表二存着所有电表各整点的数据,整点的数据可能没有
现在给定开始时间 1:00和结束时间9:00
这六条数据怎么求?

  • 写回答

3条回答 默认 最新

  • Json-Huang 2019-08-09 19:15
    关注

    from是数据库的关键字,暂时用table1代表第一张存电表,table2代表第二张表(存每个电表各时间点的数据),可以用下面的试下

    SELECT t0.EMeterID,t0.Time,t0.data from table2 t0,
    (SELECT t1.EMeterID,max(Time) as max,min(Time) as min from table2 t1,table1 t2
    where hour(Time)>='1' and hour(Time)<='9'
    and t1.EMeterID = t2.EMeterID
    GROUP BY t1.EMeterID  ) tmp
    where 
    t0.EMeterID = tmp.EMeterID and
    t0.Time in( tmp.min , tmp.max )
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 PADS Logic 原理图
  • ¥15 PADS Logic 图标
  • ¥15 电脑和power bi环境都是英文如何将日期层次结构转换成英文
  • ¥20 气象站点数据求取中~
  • ¥15 如何获取APP内弹出的网址链接
  • ¥15 wifi 图标不见了 不知道怎么办 上不了网 变成小地球了