PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Funkcje agregujące pierwszą i ostatnią wartość w postgresql, które działają poprawnie z wartościami NULL

Możesz użyć funkcji okna lead() i lag() aby sprawdzić pierwszy i ostatni rekord, na przykład:

select
    max(a.id) as id,
    max(a.first) as first,
    max(a.last) as last
from (
    select
         v.id,
         case when lag(v.id) over(order by v.id, p.install_date) is null then p.install_date end as first,
         case when lead(v.id) over(order by v.id, p.install_date) is null then p.remove_date end as last
    from vehicle v 
       left join period p on (v.id = p.car_id) 
    where v.id = 1 
) as a

demonstracja skrzypiec SQL



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Play Nie można połączyć się z bazą danych (PostgreSQL) [domyślnie]

  2. Django -- Modele nie istnieją, ale Django nadal je ładuje

  3. PostgreSQL, jak sprawdzić, które zapytania zostały uruchomione

  4. Utwórz tabelę Postgresql z Avro Schema w Nifi

  5. Spłaszczanie relacji z tablicą w celu wyemitowania jednego wiersza na wpis tablicy