【问题标题】:HIVE unix_timestamp calculation works in query but not insert into tableHIVE unix_timestamp 计算在查询中有效,但不能插入到表中
【发布时间】:2015-05-06 22:54:28
【问题描述】:

当我在 hive 中只运行其中的选择部分时,我会得到最后一列的整数结果以及时间戳减法(例如 426)。但是当我尝试将数据插入到表中时,最后一列都是 NULL。

我认为这与创建表有关,但我尝试使用字符串类型、int、bigint 和 double 为该字段创建表,但没有成功。我错过了什么?

insert into table mytable
select cola
, colb
, colc
, unix_timestamp(timestamp_a)-unix_timestamp(timestamp_b)
from myothertable

【问题讨论】:

  • 右列类型为bigint。无论如何,你能看到 hive 在底层文件中为该列写了什么吗?我认为这是了解正在发生的事情的第一步......

标签: null hive unix-timestamp


【解决方案1】:

我还没有弄清楚为什么会这样,但我找到了解决方案。我只是在前一个表中进行了 unix_timestamp 转换,然后当我在单独的表中运行它时,减法起作用了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-25
    • 2016-07-07
    • 1970-01-01
    • 2015-10-17
    相关资源
    最近更新 更多