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

jendela geser sql - menemukan nilai maksimal selama interval

SELECT  *,
        (
        SELECT  SUM(value)
        FROM    mytable mi
        WHERE   mi.tstamp BETWEEN m.tstamp - '5 minute'::INTERVAL AND m.tstamp
        ) AS maxvalue
FROM    mytable m
ORDER BY
        maxvalue DESC
LIMIT   1

Di PostgreSQL 11 dan di atasnya:

SELECT  SUM(value) OVER (ORDER BY tstamp RANGE '5 minute' PRECEDING) AS maxvalue,
        *
FROM    mytable m
ORDER BY
        maxvalue DESC
LIMIT   1



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Apa opsi yang tersedia untuk mengidentifikasi dan menghapus objek yang tidak valid di Postgres (mis:indeks rusak)

  2. Spring + Hibernate:Penggunaan Memori Cache Rencana Kueri

  3. Mengapa kinerja kueri PostgresQL turun seiring waktu, tetapi dipulihkan saat membangun kembali indeks

  4. Pemicu PostgreSQL untuk menghasilkan kode untuk beberapa tabel secara dinamis

  5. Memantau PostgreSQL di Lingkungan Hibrida