Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hadoop 转换日期';2014年2月11日&x27;(mm/d/yyyy)插入配置单元中的时间戳_Hadoop_Hive - Fatal编程技术网

Hadoop 转换日期';2014年2月11日&x27;(mm/d/yyyy)插入配置单元中的时间戳

Hadoop 转换日期';2014年2月11日&x27;(mm/d/yyyy)插入配置单元中的时间戳,hadoop,hive,Hadoop,Hive,我想使用Hive将日期“11/2/2014”转换为时间戳。 此日期为字符串格式。 我尝试了很多方法,但得到的是空值。这是语法: CAST(FROM_UNIXTIME(UNIX_TIMESTAMP(<date_column>,'MM/dd/yyyy')) as TIMESTAMP) CAST(从UNIX时间(UNIX时间戳(,'MM/dd/yyyy')转换为时间戳) 您始终需要转到unix_时间戳,然后从unix时间戳转换为正常时间戳。看起来不太好,但很管用 检查一下,可能是语法正

我想使用Hive将日期“11/2/2014”转换为时间戳。 此日期为字符串格式。 我尝试了很多方法,但得到的是空值。

这是语法:

CAST(FROM_UNIXTIME(UNIX_TIMESTAMP(<date_column>,'MM/dd/yyyy')) as TIMESTAMP)
CAST(从UNIX时间(UNIX时间戳(,'MM/dd/yyyy')转换为时间戳)
您始终需要转到unix_时间戳,然后从unix时间戳转换为正常时间戳。看起来不太好,但很管用

检查一下,可能是语法正确,但格式错误。也许您的格式是dd/MM/yyyy?这就是为什么您下次应该尝试让它工作的原因。

这是语法:

CAST(FROM_UNIXTIME(UNIX_TIMESTAMP(<date_column>,'MM/dd/yyyy')) as TIMESTAMP)
CAST(从UNIX时间(UNIX时间戳(,'MM/dd/yyyy')转换为时间戳)
您始终需要转到unix_时间戳,然后从unix时间戳转换为正常时间戳。看起来不太好,但很管用


检查一下,可能是语法正确,但格式错误。也许您的格式是dd/MM/yyyy?这就是为什么您下次应该尝试让它工作的原因。

仅使用字符串函数:

SELECT CAST(
         CONCAT(
           REGEX_REPLACE(
           REGEX_REPLACE( dirty_date
                        , '^([0-9]*)/([0-9]*)/([0-9]*)$','$3-0$1-0$2')
                        , '-0([0-9][0-9])','-$1')
          , ' 00:00:00')
       AS TIMESTAMP)
FROM dirty_input

仅使用字符串函数的替代方法:

SELECT CAST(
         CONCAT(
           REGEX_REPLACE(
           REGEX_REPLACE( dirty_date
                        , '^([0-9]*)/([0-9]*)/([0-9]*)$','$3-0$1-0$2')
                        , '-0([0-9][0-9])','-$1')
          , ' 00:00:00')
       AS TIMESTAMP)
FROM dirty_input

为了改进这个问题,还请包括您为Convert编写的代码。现在您必须编写自定义自定义自定义自定义项。日期值以YYYY-MM-DD的形式表示。例如:日期“2014-12-07”。允许的日期范围为0000-01-01到9999-12-31。时间戳使用格式yyyy-mm-dd hh:mm:ss[.f..]。强制转换(字符串为日期)--如果字符串的格式为“YYYY-MM-DD”,则返回与之对应的日期值。如果字符串值与此格式不匹配,则返回NULL。来源-为了改进问题,请同时提供您为Convert编写的代码。现在您必须编写自定义自定义自定义自定义项。日期值以YYYY-MM-DD的形式表示。例如:日期“2014-12-07”。允许的日期范围为0000-01-01到9999-12-31。时间戳使用格式yyyy-mm-dd hh:mm:ss[.f..]。强制转换(字符串为日期)--如果字符串的格式为“YYYY-MM-DD”,则返回与之对应的日期值。如果字符串值与此格式不匹配,则返回NULL。资料来源-效果很好。我缺少语法。非常感谢:-)它工作得很好。我缺少语法。非常感谢:-)