sql - Hive中的时间戳操作

标签 sql hadoop hive impala

如何减去 hive 中的 2 个时间戳列并将结果以其等效的小时格式存储在单独的列中?

最佳答案

假设您有给定格式的时间戳:2016-10-16 10:51:00.000

您可以尝试以下操作:

SELECT
  cast(
    round(
      cast((e-s) as double) * 1000
    ) as int
  ) time_difference
FROM (SELECT cast(starttime as double) s, cast(endtime as double) e from table1) q;

它会给你两个时间戳的差异(以毫秒为单位)。然后您可以将其转换为您期望的格式(小时、天等)。

关于sql - Hive中的时间戳操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40103331/

相关文章:

apache-spark - 外部 Hive 表刷新表与 MSCK 修复

sql - 选择任何FROM系统

SQL 和 Visual Studios - 传递变量

hive - 在 hive 查询中使用不等号

sql - 从 “anchor table”左外联接看到重复项

java - 为Hadoop实现协调器服务

hive - 配置单元中集合中元素的平均数量?

sql - 将 Sub 查询转换为单个查询 Hive

sql - ASp.NET MVC EF4 SQL 表或字段级别安全性

performance - HDFS 与 HBASE : Which one performs better on millions of small text files?