微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

基于两列日期时间条件的 SQL SUM

如何解决基于两列日期时间条件的 SQL SUM

请帮助我了解此 sql 语法。想要根据另一个表中每分钟的唯一值将 avr 值放入表一。 最佳/彼得

表 1

Activity,starttime,endtime 
Dance,2010-01-01 15:00,2010-01-01 15:05

表 2

Activity,Minute,Value
Dance,50
Dance,2010-01-01 15:01,10
Dance,2010-01-01 15:02,2010-01-01 15:03,20
Dance,2010-01-01 15:04,10

想要的结果

Activity,endtime,avr Value
Dance,2010-01-01 15:05,20

解决方法

一种方法是相关子查询:

select t1.*,(select avg(t2.value)
        from table2 t2
        where t2.activity = t1.activity and
              t2.minute >= t1.starttime and
              t2.minute < t1.endtime
       ) as avg_value
from table1 t1;

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。