2017-09-09 1 views
2

내가 Vertica의에서 필드를이 곳의 한 부분으로 변환 할 필요는Vertica의 DB는 : 날짜 문자열을 사용하고 절

deviceReceiptTime -5 Integer 19 8 

내가에 대한 분석을하고자 밀리 초

1504828819089 
1504828819071 

Epoch date Human readable date (GMT) 
1504828819 2017-09-08 00:00:19 

를 개최 나타납니다 먼저 밀리 초로 변환하는 대신 YYYY-MMDD HH24MISS과 같은 표준 날짜 형식을 입력 할 수 있습니다. UTC에서 유닉스 시대 시간을 변환하는

where deviceReceiptTime between 
    extract (epoch from '2017-02-08 00:00:00'::timestamp) and 
    extract (epoch from '2017-04-08 00:00:00'::timestamp) 

답변

1

어쩌면이 같은 ... 예를 들어

where deviceReceiptTime between 
    extract (epoch from <lower_limit) and 
    extract (epoch from <higher_limit>) 

)를 타임 스탬프 값으로 변경합니다.

to_timestamp(receiptTimestamp/1e3) at time zone 'UTC' between '2017-09-15 8:00:00 am' and '2017-09-15 9:00:00 am' 

기능은 따라서 우리는 당신이 당신의 입력 시간대에 맞게 시간대 지정을 변경할 수 있습니다 1000에 의해 분할해야, 시간 (초)을 허용 (예 :

시간대 '미국/시카고의

에서
+0

여기서는 두 개의 상수를 먼저 변환 한 다음 두 개의 상수를 지정하고 몇 백만 개를 변환하는 대신 (인덱스 될 수있는) 열의 실제 내용과 비교하기 때문에 먼저이 항목을 선호합니다. t를 비교하기 전에 타임 스탬프에 대한 정수 밑단 ... – marcothesane

0

사용 to_timestamp 기능 (INT : 대신

where deviceReceiptTime Between 1490270439780 and 1490270448888 
관련 문제