PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Rata-Rata Bergerak berdasarkan Stempel Waktu di PostgreSQL

Anda dapat bergabung dengan meja Anda dengan dirinya sendiri:

select l1.id, avg( l2.Temperature )
from l l1
inner join l l2 
   on l2.id <= l1.id and
      l2.Timestamps + interval '15 minutes' > l1.Timestamps
group by l1.id
order by id
;

Hasil:

| ID |            AVG |
-----------------------
|  1 |           5.39 |
|  2 |          5.365 |
|  3 | 5.296666666667 |
|  4 |         5.3575 |
|  5 |          5.346 |
|  6 | 5.321666666667 |
|  7 | 5.331428571429 |

Perhatikan:Hanya 'kerja keras' yang dibuat. Anda harus menggabungkan hasil dengan tabel asli atau menambahkan kolom baru ke kueri. Saya tidak tahu permintaan terakhir Anda diperlukan. Sesuaikan solusi ini atau minta bantuan lebih lanjut.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Permintaan PostgreSQL untuk mencantumkan semua nama tabel?

  2. Menyimpan gambar dalam bidang byte dalam database PostgreSQL

  3. Bidang gabungan CTE rekursif dengan orang tua dari titik sewenang-wenang

  4. Bagaimana cara meningkatkan koneksi maksimal di postgres?

  5. Bagaimana menemukan jalur pg_config