问题描述
我想选择 1
如果当前日期是通过oracle sql在2个日期之间。
我写了阅读其他问题后,sql
但它只返回null。 sysdate是当前日期,日期格式为$ code> 01/05/2014 DD / MM / YYYY 。
我写的sqls如下:
从双$ b $中选择1 b WHERE to_date(sysdate,'DD / MM / YYYY')
BETWEEN TO_DATE('28 / 02/2014','DD / MM / YYYY')
AND TO_DATE('20 / 06/2014 ','DD / MM / YYYY');
和
select double from double
WHERE to_date(sysdate,'DD / MM / YYYY')> = TO_DATE('28 / 02/2014','DD / MM / YYYY')
AND to_date(sysdate,'DD / MM / YYYY')< TO_DATE('20 / 06/2014','DD / MM / YYYY');
提前感谢您的帮助。
您不需要将 to_date()
应用于 sysdate
。已经存在:
从双
中选择1
WHERE sysdate BETWEEN TO_DATE('28 / 02 / 2014,DD / MM / YYYY)和TO_DATE('20 / 06/2014','DD / MM / YYYY');
如果您关心日期时间组件,则使用 trunc ()
:
从双
中选择1
WHERE trunc(sysdate )截至TO_DATE('28/02/2014','DD / MM / YYYY')和
TO_DATE('20 / 06/2014','DD / MM / YYYY');
I would like to select 1
if current date falls between 2 dates through oracle sql.
I wrote an sql after reading through other questions
http://stackoverflow.com/questions/2369222/oracle-date-between-query
but it returned only null. sysdate is the current date that is 01/05/2014
in date format DD/MM/YYYY
.
The sqls i wrote is below:
select 1 from dual
WHERE to_date(sysdate,'DD/MM/YYYY')
BETWEEN TO_DATE('28/02/2014', 'DD/MM/YYYY')
AND TO_DATE('20/06/2014', 'DD/MM/YYYY');
and
select 1 from dual
WHERE to_date(sysdate,'DD/MM/YYYY') >= TO_DATE('28/02/2014', 'DD/MM/YYYY')
AND to_date(sysdate,'DD/MM/YYYY') < TO_DATE('20/06/2014', 'DD/MM/YYYY');
Thanks in advance for your help.
You don't need to apply to_date()
to sysdate
. It is already there:
select 1
from dual
WHERE sysdate BETWEEN TO_DATE('28/02/2014', 'DD/MM/YYYY') AND TO_DATE('20/06/2014', 'DD/MM/YYYY');
If you are concerned about the time component on the date, then use trunc()
:
select 1
from dual
WHERE trunc(sysdate) BETWEEN TO_DATE('28/02/2014', 'DD/MM/YYYY') AND
TO_DATE('20/06/2014', 'DD/MM/YYYY');
这篇关于检查当前日期是否在两个日期之间Oracle SQL的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!