配置单元SQL转换(UTC)2018-06-19T14:01:17.000000到时间戳(';MM/dd/yyyy HH:MM:ss';)

配置单元SQL转换(UTC)2018-06-19T14:01:17.000000到时间戳(';MM/dd/yyyy HH:MM:ss';),sql,hive,timestamp,utc,hue,Sql,Hive,Timestamp,Utc,Hue,我知道这个问题看起来很简单,应该是一个简单的答案,但我花了一些时间在这个问题上,无法解决它。如果能帮上点忙,我将不胜感激。 我正在色调配置单元上使用SQL TO_DATE(col)工作正常,但只返回日期,而不返回时间。 据我所知,原始格式是UTC字符串 我相信代码应该是这样的,我可能把字段放错地方了 from_unixtime(unix_timestamp(column_name, 'yyyy-MM-dd HH:mm:ss.S'), 'yyyy-MM-dd') 因此,我得到了空值,而不是期望的

我知道这个问题看起来很简单,应该是一个简单的答案,但我花了一些时间在这个问题上,无法解决它。如果能帮上点忙,我将不胜感激。 我正在色调配置单元上使用SQL

TO_DATE(col)工作正常,但只返回日期,而不返回时间。 据我所知,原始格式是UTC字符串

我相信代码应该是这样的,我可能把字段放错地方了

from_unixtime(unix_timestamp(column_name, 'yyyy-MM-dd HH:mm:ss.S'), 'yyyy-MM-dd')

因此,我得到了空值,而不是期望的值:“yyyy-MM-dd HH:MM:ss”

您需要在unix\u时间戳转换中匹配

尝试使用以下语法:

hive> select from_unixtime(unix_timestamp("2018-06-19T14:01:17.000000", "yyyy-MM-dd'T'HH:mm:ss.SSSSSS"), 'yyyy-MM-dd HH:mm:ss');
2018-06-19 14:01:17
(或)

结果:

hive> select from_unixtime(unix_timestamp("2018-06-19T14:01:17.000000", "yyyy-MM-dd'T'HH:mm:ss.SSSSSS"), 'yyyy-MM-dd HH:mm:ss');
2018-06-19 14:01:17

您需要在unix\u时间戳中匹配
T

尝试使用以下语法:

hive> select from_unixtime(unix_timestamp("2018-06-19T14:01:17.000000", "yyyy-MM-dd'T'HH:mm:ss.SSSSSS"), 'yyyy-MM-dd HH:mm:ss');
2018-06-19 14:01:17
(或)

结果:

hive> select from_unixtime(unix_timestamp("2018-06-19T14:01:17.000000", "yyyy-MM-dd'T'HH:mm:ss.SSSSSS"), 'yyyy-MM-dd HH:mm:ss');
2018-06-19 14:01:17
谢谢!:)这就解决了问题。谢谢!:)这就解决了问题。