【问题标题】:How do I compare diferently formatted dates in sql db2?如何在 sql db2 中比较不同格式的日期?
【发布时间】:2019-11-14 13:05:59
【问题描述】:

一列的格式如下:dd/mm/yyyy 另一个格式如下:yyyymmdd 如何创建让我比较这两列的选择语句?他们都是varchar。 我正在运行一个 db2 数据库。

【问题讨论】:

  • 如果它们的格式不同,它们是什么数据类型?将它们转换为 DATE 数据类型

标签: sql db2


【解决方案1】:

我是 DB2,您可以使用 TO_DATE() 将两个字符串日期转换为 TIMESTAMP 数据类型(注意 TO_DATETIMESTAMP_FORMAT 标量函数的同义词)。

然后您可以安全地比较它们:

to_date(col1, 'dd/mm/yyyy') = to_date(col2, 'yyyymmdd')

【讨论】:

    【解决方案2】:

    我是这样解决的。 我使用了 substr:

    substr(COLUMN_NAME, 7,4) || substr(COLUMN_NAME,4,2) || sub-str(COLUMN_NAME,1,2)
    

    代表提问者发帖

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-17
      • 1970-01-01
      • 1970-01-01
      • 2019-05-11
      相关资源
      最近更新 更多