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

Dodanie kolumny do tabeli z wartością z następnego wiersza

Zasadniczo myślę, że możesz po prostu pobrać znacznik czasu w momencie zapytania, nie przechowując go w tabeli, ale jeśli wykonujesz taką akcję i uważasz, że tego potrzebujesz, to:

Musisz dodać tę kolumnę do swojej tabeli:

ALTER TABLE tablename ADD COLUMN te timestamp;

Następnie wykonaj aktualizację podając wartość za pomocą LEAD funkcja okna.

UPDATE tablename t
SET te = x.te
FROM (
  SELECT ts, lead(ts, 1) OVER (order by ts) AS te
  FROM tablename t2
  ) x
WHERE t.ts = x.ts

Oto przykład, jak to działa przy użyciu przykładowych danych całkowitych:SQL Fiddle .

Będzie działać dokładnie tak samo dla timestamp wartości typu danych.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak przekazać hasło do pg_dump?

  2. Jaki jest odpowiednik PostgreSQL z SQL Server NVARCHAR?

  3. Wykonaj surowe zapytanie podczas migracji - Sequelize 3.30

  4. upuść db w postgresie

  5. Strumień pobrany z Postgresa z jOOQ nie zwraca wyników z zajęć