在 WHERE 條件中判斷 CREATE_TIME 是否在「目前時間」與「目前時間 + 7 天」之間。
SELECT c.*
FROM crm_order_taobao_opt_history c
WHERE c.CREATE_TIME < SYSDATE
AND SYSDATE < c.CREATE_TIME + 7
AND c.order_sn LIKE 'TB%'
AND c.opt_status = 12
AND NOT EXISTS (
SELECT 1 FROM crm_order_taobao_opt_history o
WHERE c.order_sn = o.order_sn AND o.opt_status = 13
)
AND ( ...其他條件... );
DATE 型別直接 + 數字 即為加天數(SYSDATE + 7 代表 7 天后)。VARCHAR2 儲存日期字串,需先 TO_DATE 轉換:TO_DATE(create_time, 'YYYY-MM-DD HH24:MI:SS') + 7。SYSDATE 回傳資料庫伺服器當前日期時間,無需加引號。SELECT TO_DATE('2004-05-07 13:23:44','YYYY-MM-DD HH24:MI:SS') + 7 FROM dual;
-- 回傳 2004-05-14 13:23:44