我有一个数字类型为数字的字段,表示日期 例如:20060421
我在其他表中有两个其他字段,数据类型为Date。
我想从第一个表中检索位于另一个表中的两个日期之间的行。
如何在数据类型为Date的两个日期的between子句中比较简单数字格式的日期。
答案 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