Oracle比较两个日期之间的数字日期

时间:2013-07-18 18:10:03

标签: sql date oracle11g oracle-sqldeveloper

我有一个数字类型为数字的字段,表示日期 例如:20060421

我在其他表中有两个其他字段,数据类型为Date。

我想从第一个表中检索位于另一个表中的两个日期之间的行。

如何在数据类型为Date的两个日期的between子句中比较简单数字格式的日期。

1 个答案:

答案 0 :(得分:1)

我认为这里最简单的解决方案是将数字日期转换为日期类型,然后只使用内置的BETWEEN函数。

-- sample cast
select to_date(to_char(20060801),'YYYYMMDD') from dual

所以你的解决方案应该是这样的:

select *
from numericDatesTable t1, otherTable t2
where to_date(to_char(t1.date),'YYYYMMDD') between t2.date1 and t2.date2