Sql 查询计划日期比较
我有一张这样的桌子:Sql 查询计划日期比较,sql,oracle,Sql,Oracle,我有一张这样的桌子: account number(repeat) | schedule_due_date ---------------------- | ----------------- 111 | '01-FEB-2017' 111 | '01-MAR-2017' 111 | '01-APR-2017' 我需要一个SQL查询,如果schedule\u due\u date是
account number(repeat) | schedule_due_date
---------------------- | -----------------
111 | '01-FEB-2017'
111 | '01-MAR-2017'
111 | '01-APR-2017'
我需要一个SQL查询,如果schedule\u due\u date
是first或last,则该查询将给出帐号
如果sysdate
是2017年2月1日
则应给出账号,如果sysdate
是2017年4月1日
则应给出账号
但是,如果sysdate
是2017年3月1日
,则不应给出账号。
实际上,它应该使用sysdate
检查所有帐户的最小日期和最大日期,并给出结果。尝试下面的方法(使用分组,并且拥有可以解决此问题)
试试这个
SELECT account_number
FROM table1
where schedule_due_date = (select max(schedule_due_date) from table1 )
or schedule_due_date = (select min(schedule_due_date) from table1 )
这似乎非常简单。您发现有什么困难?可能希望截断SYSDATE以删除time元素。
SELECT account_number
FROM table1
where schedule_due_date = (select max(schedule_due_date) from table1 )
or schedule_due_date = (select min(schedule_due_date) from table1 )