2017-09-25 96 views

回答

1

如果希望所有將在任何時間已過期的項目從現在起30天內完成:

SELECT * 
FROM table_name 
WHERE date_expire < TRUNC(SYSDATE) + INTERVAL '31' DAY; 

如果您想排除已經過期的項目,那麼:

SELECT * 
FROM table_name 
WHERE date_expire < TRUNC(SYSDATE) + INTERVAL '31' DAY 
AND date_expire >= SYSDATE; 

如果要排除今天之前到期,則項目:如果你想數30天今天再下29天改變INTERVAL '31' DAYINTERVAL '30' DAY

SELECT * 
FROM table_name 
WHERE date_expire < TRUNC(SYSDATE) + INTERVAL '31' DAY 
AND date_expire >= TRUNC(SYSDATE); 

+0

感謝它真正的工作:) :) – Shilpi

1

你可以試試下面一個獲得所需的結果

select id,name,date_issued,date_expire from yourtable 
    where date_expire between trunc(sysdate) and trunc(sysdate)+30 
0

如果你想要的是30天到期:

select * from yourtable 
    where trunc(date_expire) = trunc(sysdate)+30 
相關問題