选择记录会从今天的日期

问题描述:

在一个月到期我有一个的Oracle SQL表和字段该表是选择记录会从今天的日期

id 
name 
date_issued 
date_expire 

我想只有那些在30天内到期的记录。

如果希望所有将在任何时间已过期的项目从现在起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

你可以试试下面一个获得所需的结果

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

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

select * from yourtable 
    where trunc(date_expire) = trunc(sysdate)+30