[HADOOP] 하이브의 문자열을 타임 스탬프로 변환
HADOOP하이브의 문자열을 타임 스탬프로 변환
내 하이브 테이블에 다음 타임 스탬프 문자열 표현이 있습니다.
20130502081559999
나는 그것을 다음과 같이 문자열로 변환해야한다.
2013-05-02 08:15:59
다음 ({code} >>> {result}) 시도했습니다.
from_unixtime(unix_timestamp('20130502081559999', 'yyyyMMddHHmmss')) >>> 2013-05-03 00:54:59
from_unixtime(unix_timestamp('20130502081559999', 'yyyyMMddHHmmssMS')) >>> 2013-09-02 08:15:59
from_unixtime(unix_timestamp('20130502081559999', 'yyyyMMddHHmmssMS')) >>> 2013-05-02 08:10:39
타임 스탬프로 전환 한 다음 유닉스 시간이 이상하게 보입니다. 어떻게해야할까요?
편집하다 나는 그것을 알아.
from_unixtime(unix_timestamp(substr('20130502081559999',1,14), 'yyyyMMddHHmmss')) >>> 2013-05-02 08:15:59
또는
from_unixtime(unix_timestamp('20130502081559999', 'yyyyMMddHHmmssSSS')) >>> 2013-05-02 08:15:59
아직도 ... 더 좋은 방법이 있습니까?
해결법
-
==============================
1."더 나은 방법"으로 무엇을 의미하는지 확신 할 수 없지만 항상 날짜 변환을 처리하는 자체 함수를 작성할 수 있습니다.
"더 나은 방법"으로 무엇을 의미하는지 확신 할 수 없지만 항상 날짜 변환을 처리하는 자체 함수를 작성할 수 있습니다.
-
==============================
2.형식에 밀리 초 세 자리가있는 것 같습니다. SimpleDateFormat에 따르면 다음과 같이 사용해야합니다.
형식에 밀리 초 세 자리가있는 것 같습니다. SimpleDateFormat에 따르면 다음과 같이 사용해야합니다.
from_unixtime(unix_timestamp('20130502081559999', 'yyyyMMddHHmmssSSS'))
희망이 도움이됩니다.
-
==============================
3.다음과 같은 입력 파일이 있다고 가정 해 보겠습니다.
다음과 같은 입력 파일이 있다고 가정 해 보겠습니다.
file : ///data/csv/temptable/temp.csv
1 2015-01-01 2 2015-10-10 12:00:00.232 3 2016-02-02 4 2015-09-12 23:08:07.124
그런 다음이 방법을 시도해 볼 수도 있습니다.
create external table temptable(id string, datetime string) row format delimited fields terminated by '\t' stored as textfile LOCATION 'file:///data/csv/temptable'; create table mytime as select id, from_utc_timestamp(date_format(datetime,'yyyy-MM-dd HH:mm:ss.SSS'),'UTC') as datetime from temptable;
from https://stackoverflow.com/questions/17796071/convert-string-to-timestamp-in-hive by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] Hadoop / Spark에서 proto3를 사용하려면 어떻게해야합니까? (0) | 2019.06.17 |
---|---|
[HADOOP] Hadoop에서 기존 파일의 블록 크기 변경 (0) | 2019.06.17 |
[HADOOP] Hadoop HADOOP_CLASSPATH 문제 (0) | 2019.06.17 |
[HADOOP] 하둡 얀 컨테이너가 충분한 공간을 할당하지 않음 (0) | 2019.06.17 |
[HADOOP] hdfs (namenode)에서 사용 된 네임 스페이스 및 메타 데이터의 의미는 무엇입니까? (0) | 2019.06.17 |