2015-01-22 3 views
0

타임 스탬프에서 'E'문자를 제거하고 싶습니다 (위의 행에 있음). 그러나 위의 쿼리는 시간없이 타임 스탬프를 반환합니다. 주 : 'E'는 모든 시간 소인 행에 표시 될 수도 있고 표시되지 않을 수도 있습니다.regexp_extract()에서 추출하기

쿼리 regexp_extract 선택 ('?. (E) (*)'TIME_STAMP을, 2) X 에서 TIME_STAMP 로서 ((TIME_STAMP> = 'E00 : 00 : 00.00 "및 TIME_STAMP < ='E23 : 59 : 59.00 ') 또는 (time_stamp> = '00 : 00 : 00.00'및 time_stamp < = '23 : 59 : 59.00 ')) 제한 15).

필요한 변경을 제안하십시오.

+0

이 문제를 확인하고 실행중인 Hive 버전을 일부 공유 할 수 있습니까? – rchang

답변

0

상수 문자열을 제거하는 경우 TRANSLATE 내장 함수가 더 명확 할 수 있습니다. 예를 들면 다음과 같습니다.

SELECT TRANSLATE(time_stamp, 'E', '') AS time_stamp FROM X;