【问题标题】:How to join tables by date column with different date format in SQL Vertica?如何在 SQL Vertica 中按日期列连接具有不同日期格式的表?
【发布时间】:2021-04-30 02:09:49
【问题描述】:

我在 SQL 中有两个表

表1:

date        col2
2020-10-25  2
2020-10-20  20

表2:

date        col1
25.10.2020  1
20.10.2020  10

如您所见,我有不同的日期格式。我的问题是如何在 Vertica SQL 中在每个表的日期列上加入这两个表?

我只需要按日期列 co 加入这两个表,例如我需要具有 3 列的表:日期、col1、col2,如下所示:

结果:

date        col1  col2
2020-10-25  1     2
2020-10-20  10    20

【问题讨论】:

  • 您能否也指定预期结果。
  • 只需按日期列 co 连接这两个表,例如我需要 3 列的表:日期、col1、col2
  • 这是描述,而不是指定
  • 好的,我改变了,我添加了需要的结果:)
  • 这样好多了!

标签: sql date join format vertica


【解决方案1】:

您的数据模型确实存在问题。 dates 应该使用适当的日期/时间类型存储,不是字符串

您可以转换为join 的日期,使用:

select to_date(t1.date, 'YYYY-MM-DD'), t1.col1, t2.col2
from table1 t1 join
     table2 t2
     on to_date(t1.date, 'YYYY-MM-DD') = to_date(t2.date, 'DD.MM.YYYY')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-23
    • 2017-03-26
    相关资源
    最近更新 更多