sql >> Database >  >> RDS >> Mysql

mysql-overlappingen van twee tabellen in tijdstempels

Ik begrijp niet echt hoe de dataset correleert met de resultatenset, maar het lijkt me dat je min of meer zoiets wilt...

 SELECT m.id
      , DATE(FROM_UNIXTIME(m.starttime))Date,SUM(m.duration) all_movement
      , SUM(l.duration) all_load
   FROM move_table m
   JOIN load_table l
     ON l.id = m.id
    AND l.endtime > m.starttime
    AND l.starttime < m.endtime
  GROUP 
     BY m.id
      , DATE(FROM_UNIXTIME(m.starttime));
 +-------------------+------------+--------------+----------+
 | id                | Date       | all_movement | all_load |
 +-------------------+------------+--------------+----------+
 | 00:50:c2:63:10:1a | 2012-10-29 |          391 |      520 |
 | 00:50:c2:63:10:1a | 2013-02-22 |          391 |      520 |
 | 00:50:c2:63:10:1b | 2013-02-22 |          181 |      220 |
 +-------------------+------------+--------------+----------+

Overigens, duration lijkt overbodig in deze context omdat (bijvoorbeeld) SUM(m.endtime-m.starttime) hetzelfde resultaat oplevert.



  1. PostgreSQL:tussen met datetime

  2. SSIS Excel-import forceren van onjuist kolomtype

  3. Een datum opmaken in T-SQL

  4. Hoe dynamische SQL opschonen (voorkomen van SQL-injectie) in SQL Server?