Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Perbarui hitungan hari sebelumnya menggunakan fungsi LAG di ORACLE

Anda dapat menggunakan MERGE:

MERGE INTO PRD_DTLS A USING 
(
  SELECT
      PRODUCT,
      TXN_DATE,
      LAG(NO_OF_TXNS) OVER(
          PARTITION BY PRODUCT
          ORDER BY
              TXN_DATE
      ) AS PREV_TXN
  FROM
      PRD_DTLS 
)
B ON ( A.PRODUCT = B.PRODUCT
       AND A.TXN_DATE = B.TXN_DATE )
WHEN MATCHED THEN UPDATE SET A.PREV_DAY_TXN = CASE
    WHEN B.PREV_TXN IS NOT NULL THEN B.PREV_TXN
    ELSE 0
END;

Semangat!!



  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 pivot Oracle SQL

  2. Alat pengembang Oracle SQL:Unduh &Instalasi

  3. Keajaiban DUAL

  4. Mengidentifikasi Pertentangan Urutan ASH di RAC

  5. BUAT rekayasa balik TABEL di Oracle