sql >> Base de Datos >  >> RDS >> Mysql

MySQL:obtenga la marca de tiempo de inicio y finalización para cada día

Si solo vuelve a subir/bajar una vez al día, puede hacer que la consulta sea bastante simple; solo encuentra el tiempo mínimo y máximo donde está debajo, agrupando por fecha.

SELECT
  DATE(statustime) statusdate,
  MIN(CASE WHEN reading<50 THEN statustime ELSE NULL END) start_time,
  MAX(CASE WHEN reading<50 THEN statustime ELSE NULL END) end_time
FROM myTable
GROUP BY statusdate

Un SQLfiddle para probar .