将 DB2 日期转换为 Oracle 日期

Converting DB2 date to Oracle date

想要将格式为 2018-04-12-14.02.16.058110 的 DB2 日期拆分为两个不同的列,格式为 YYYYMMDD,其他列为 HHMM。

你不能那样做。 Oracle DATE 数据类型同时包含 DATE 和 TIME 组件,因此 - 尽管您可能会尝试使用在 Internet 上找到的不同 TO_CHAR(或者更糟,TO_DATE 或 TO_TIMESTAMP)函数,但最终结果将相同:值将同时包含日期和时间。

因此,我建议您完全这样做:存储 YYYYMMDD HHMI(注意 MI - 分钟,而不是 MM - 月)。

例如:

SQL> select
  2    cast(to_timestamp('2018-04-12-14.02.16.058110',
  3                      'yyyy-mm-dd-hh24.mi.ss,ff6') as date) result
  4  from dual;

RESULT
-------------------
12.04.2018 14:02:16

SQL>