【问题标题】:extract the date from a timestamp value variable in Impala从 Impala 中的时间戳值变量中提取日期
【发布时间】:2018-06-24 20:19:49
【问题描述】:

如何从 Impala 中的时间戳值变量中提取日期?

例如时间 = 2018-04-11 16:05:19 应该是 2018-04-11

【问题讨论】:

  • Afaik Impala 支持trunc(ts_col, 'D')
  • 非常感谢,这会创建:2018-03-26 00:00:00 - 但我怎样才能只获得 2018-03-26?
  • 强制转换为字符串加子字符串?
  • 有人知道如何使用 extract 吗?我看到一个人可以做到这一年,但它是如何做到的?
  • EXTRACT 仅支持 YEAR/MONTH/DAY 作为单个值,但不支持组合。而且 Impala 不支持 DATE 数据类型,那么它将是一个简单的CAST(tscol AS DATE)

标签: sql cloudera impala


【解决方案1】:

试试这个:

from_timestamp('2018-04-11 16:05:19','yyyy-MM-dd') as date_value

from_timestamp(datetime timestamp, pattern string):将 TIMESTAMP 值转换为表示相同值的字符串。请参阅文档here

【讨论】:

  • 虽然此代码可以解决 OP 的问题,但最好包含关于您的代码如何解决 OP 问题的说明。这样,未来的访问者可以从您的帖子中学习,并将其应用到他们自己的代码中。 SO 不是编码服务,而是知识资源。此外,高质量、完整的答案更有可能得到支持。这些功能,以及所有帖子都是独立的要求,是 SO 作为一个平台的一些优势,使其与论坛区分开来。您可以编辑以添加其他信息和/或使用源文档补充您的解释。
【解决方案2】:
to_date (t1.local_time), as date_value

to_date:从时间戳值返回日期字段的字符串表示形式。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-07-18
    • 2021-02-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-01
    相关资源
    最近更新 更多