PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

sql плъзгащ се прозорец - намиране на максимална стойност за интервал

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

В PostgreSQL 11 и по-нова версия:

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. Най-добра практика за идентифициране на jsonb null в plpgsql

  2. Hibernate актуализира едно към много каскадно

  3. Разделяне на низ, разделен със запетая, във функцията PL/pgSQL

  4. Мигриране от Oracle към PostgreSQL – какво трябва да знаете

  5. Играйте! рамка - Не може да се свърже с база данни