sql >> Database >  >> RDS >> Oracle

Oracle APEX - SQL - Een sequentiële geschiedenis maken en dagen tussen elke fase berekenen

Ik zou zeggen dat je al alle statistieken die je nodig hebt vastlegt, aangezien de duur kan worden afgeleid uit de bestaande gegevens. U kunt een weergave maken:

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;

Dan:

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. Hoe toegang te krijgen tot MySQL vanuit meerdere threads tegelijk

  2. Invoegen indien niet bestaat, anders id retourneren in postgresql

  3. Hoe kan ik het entiteitsraamwerk dwingen om identiteitskolommen in te voegen?

  4. BULK INSERT ontbreekt laatste rij?