qq_30661027 2015-12-29 06:13 采纳率: 100%
浏览 1593
已采纳

急急急,求sql大神帮忙解决

各位大神们,现在有两张表realtime(send_time,range,oil)和gps(send_time,speed),我要把这两张表的数据汇总到sum表中,sum表的字段有year,month,day,hour,max(range)-min(range),avg(oil),max(speed),avg(speed),sum表记录的是每小时的数据,年月日小时就是send_time里面的,前两张表是每10秒的数据,他们每条数据都是一一对应的,sum表用的是是组合主键,有年月日小时这4个主键,我用的mysql,达到这一操作的sql语句要怎么写啊,我之前想写成一条,总写不好,后来分2条写,第二个update语句又不知道怎么写了,谢谢帮助我的各位大神

  • 写回答

5条回答 默认 最新

  • 小小农民 2015-12-29 07:04
    关注

    加上left join拼接呢
    select a.* ,b.* from
    (SELECT YEAR(r.send_time) y,MONTH(r.send_time) m,DAY(r.send_time) d,HOUR(r.send_time) h,
    max(r.driving_range)-min(r.driving_range) r,avg(r.avg_oil_a) o
    FROM realtime r GROUP BY DATE_FORMAT(r.sending_time,'%Y-%m-%d %H')) AS a
    LEFT JOIN
    (
    SELECT YEAR(g.send_time) y,MONTH(g.send_time) m,DAY(g.send_time) d,HOUR(g.send_time) h,
    max(g.speed) ms,avg(g.speed) avs
    FROM gps g GROUP BY DATE_FORMAT(g.sending_time,'%Y-%m-%d %H') ) AS b
    on a.y = b.y and a.m= b.m and a.h=b.h and a.d=b.d

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 unity从3D升级到urp管线,打包ab包后,材质全部变紫色
  • ¥50 comsol温度场仿真无法模拟微米级激光光斑
  • ¥15 上传图片时提交的存储类型
  • ¥15 Ubuntu开机显示器只显示kernel,是没操作系统(相关搜索:显卡驱动)
  • ¥15 VB.NET如何绘制倾斜的椭圆
  • ¥15 arbotix没有/cmd_vel话题
  • ¥20 找能定制Python脚本的
  • ¥15 odoo17的分包重新供应路线如何设置?可从销售订单中实时直接触发采购订单或相关单据
  • ¥15 用C语言怎么判断字符串的输入是否符合设定?
  • ¥15 通信专业本科生论文选这两个哪个方向好研究呀