Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Oracle APEX - SQL - Tạo lịch sử tuần tự và tính toán số ngày giữa mỗi giai đoạn

Tôi lập luận rằng bạn đã nắm bắt được tất cả các số liệu bạn cần, vì thời lượng có thể được bắt nguồn từ dữ liệu hiện có. Bạn có thể tạo chế độ xem:

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;

Sau đó:

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. Oracle sql - tham gia với tham số đầu vào

  2. ORA-00918:Cột được xác định một cách mơ hồ

  3. Câu lệnh Oracle SQL * Plus ACCEPT

  4. Lỗi Khi kết nối với Oracle, TNS:người nghe hiện không biết dịch vụ được yêu cầu trong bộ mô tả kết nối

  5. Vòng lặp các giá trị, tạo truy vấn động và thêm vào tập kết quả