【问题标题】:Convert special String into Date in H2在H2中将特殊字符串转换为日期
【发布时间】:2016-11-29 21:05:48
【问题描述】:

Oracle to_date('26 Jul 2016, 05:15:58 AM','DD Mon YYYY, HH:MI:SS AM') 有一个 SQL 函数,它在 H2 中抛出异常“Illegal pattern character 'o'”。

我应该如何更改它以使其在 H2 中工作?

【问题讨论】:

  • 我不了解平台,但Mon 是您在这种情况下声明一个月的方式吗?我敢打赌不是 - 我敢打赌它是MM
  • 是的,Mon 是 Oracle 的格式。
  • @Pekka웃:Mon 是 Oracle 中月份缩写名称的格式模式(例如 FebJul

标签: sql oracle h2 sql-timestamp


【解决方案1】:

这是另一个例子,以毫秒为单位:

Oracle 中的原始值为13-APR-17 10.49.36.558000000 PM。首先你需要去掉多余的零并以13-APR-17 10.49.36.558 PM结尾,然后你可以调用

call PARSEDATETIME('13-APR-17 10.49.36.558000000 PM','dd-MMM-yy hh.mm.ss.SSS a','en');

注意额外的格式参数.SSS

【讨论】:

    【解决方案2】:

    TO_DATE()在H2中的等效函数是PARSEDATETIME()

    这就是你应该如何使用它来处理你的样本数据:

    PARSEDATETIME('26 Jul 2016, 05:15:58 AM','dd MMM yyyy, hh:mm:ss a','en')
    

    注意不要使用HH:mm:ss,否则AM/PM检测将不起作用。

    【讨论】:

      猜你喜欢
      • 2013-03-08
      • 1970-01-01
      • 2015-02-20
      • 2019-02-17
      • 1970-01-01
      • 1970-01-01
      • 2021-12-24
      • 1970-01-01
      • 2015-04-27
      相关资源
      最近更新 更多