sql >> Databasteknik >  >> RDS >> Mysql

Hur man väljer det senaste rekordet för varje timme på en dag

SELECT 
   HOUR(a.reading_on) As hr, max(a.id),a.reading_on
FROM 
   InverterReadings a
LEFT JOIN
   InverterReadings b
ON
        YEAR(a.reading_on)=YEAR(b.reading_on)
        AND MONTH(a.reading_on)=MONTH(b.reading_on)
        AND day(a.reading_on)=day(b.reading_on)
        AND hour(a.reading_on)=hour(b.reading_on)
AND 
    a.reading_on < b.reading_on
WHERE 
    b.reading_on is null
group by a.reading_on;

Demo :http://sqlfiddle.com/#!2/49a69/14



  1. Använder Oracle-databas med CakePHP 2.0

  2. Rekursiv MySQL-fråga med relationell innoDB

  3. Laravel Carbon Group per månad

  4. Felsökning av problem när du arbetar med datum och tid i SQL Server