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

Oracle APEX - SQL - Membuat Sejarah Berurutan dan Menghitung Hari Antara Setiap Fase

Saya berpendapat bahwa Anda sudah menangkap semua metrik yang Anda butuhkan, karena durasinya dapat diturunkan dari data-data yang ada. Anda dapat membuat tampilan:

create or replace  view vw_doc_timeline as
  select t.doc_entry_id, t.doc_id, t.doc_status, t.doc_date
       , case when doc_status = 'Published' then 0
              else lead(doc_date) over (partition by doc_id order by doc_entry_id)
                   - doc_date
              end as duration
  from tbl_doc_timeline t;

Kemudian:

SQL> select * from vw_doc_timeline;

DOC_ENTRY_ID     DOC_ID DOC_STATUS                     DOC_DATE    DURATION
------------ ---------- ------------------------------ --------- ----------
           1        123 Planned                        05-JUN-12         10
           7        123 Draft                          15-JUN-12          5
          38        123 Approval                       20-JUN-12         10
         102        123 Published                      30-JUN-12          0



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Skrip Liquibase mengembalikan ORA-01843:bukan bulan yang valid

  2. Spring JDBC Tidak dapat memuat kelas driver JDBC [Oracle.jdbc.driver.OracleDriver]

  3. Bagaimana cara membatasi jumlah baris yang dikembalikan dari Oracle di tingkat sumber data JDBC?

  4. Perbarui hitungan hari sebelumnya menggunakan fungsi LAG di ORACLE

  5. Cara mengurai xml dengan xmltable saat menggunakan namespace di xml (Oracle)