【问题标题】:Oracle compare number date between two datesOracle比较两个日期之间的数字日期
【发布时间】:2013-07-18 18:10:02
【问题描述】:

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

我在另一个表中有两个其他字段,数据类型为日期。

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

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

【问题讨论】:

    标签: sql date oracle11g oracle-sqldeveloper


    【解决方案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
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-08-15
      • 1970-01-01
      • 2012-05-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多