Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak obliczyć średnią ruchomą w MySQL w skorelowanym podzapytaniu?

Jeśli Twoja oś czasu jest ciągła (1 wartość każdego dnia), możesz poprawić swoją pierwszą próbę w ten sposób:

SELECT c.date,
       ( SELECT AVERAGE(m.value) 
         FROM   measures as m
         WHERE  m.measured_on_dt 
                    BETWEEN DATE_SUB(c.date, INTERVAL 5 day) AND c.date
       ) as `average_to_date`
FROM    calendar c
WHERE   c.date between date1 AND date2  -- graph boundaries
ORDER BY c.date ASC

Jeśli twoja oś czasu ma dziury, spowoduje to mniej niż 5 wartości średniej.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Funkcja CONV() w płatku śniegu

  2. jak przejść przez wynik mysql_query()

  3. MySQL:długi stół a szeroki stół

  4. Kiedy i dlaczego używać mysqli_fetch_row, mysqli_fetch_object, mysqli_fetch_assoc, mysqli_fetch_array

  5. Powtarzalna praca dla Laravel json api