Advertisement
Guest User

Untitled

a guest
Jan 21st, 2017
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 0.91 KB | None | 0 0
  1. MERGE INTO T_OR_ONHOLD t
  2. USING
  3. (SELECT DISTINCT
  4.     ORDER_RELEASE_XID AS OR_XID,
  5.     trunc(sysdate()) AS CURRENT_DAY
  6.     FROM -- tu Ci brakuje tabeli :D
  7. WHERE
  8.     STATUS_VALUE_37 LIKE '%.ON HOLD') s
  9. ON (t.ORDER_RELEASE_XID = s.or_xid)
  10. ----------- tego nie jestem pewien, prawdopodobnie można to ominąć i zostawić tylko "when not matched"
  11. WHEN MATCHED THEN
  12. NULL;
  13. -------------------------------
  14. WHEN NOT MATCHED THEN
  15. INSERT (ORDER_RELEASE_XID, kolumna_z_datą) -- nie wiem jak się nazywa kolumna z datą w którą będziesz chciał włożyć current_day
  16. VALUES (s.OR_XID, s.CURRENT_DAY);
  17.  
  18.  
  19. UPDATE
  20. T_OR_ONHOLD t
  21. SET t.OR_ONHOLD_DEL_DAY = sysdate
  22. WHERE
  23. t.OR_ONHOLD_INS_DAY IS NOT NULL
  24. AND
  25. t.ORDER_RELEASE_XID NOT IN (SELECT DISTINCT
  26.                                 ORDER_RELEASE_XID AS OR_XID,
  27.                                 trunc(sysdate()) AS CURRENT_DAY
  28.                                 FROM -- tu Ci brakuje tabeli :D
  29.                             WHERE
  30.                                 STATUS_VALUE_37 LIKE '%.ON HOLD')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement