복붙노트

[HADOOP] Sqoop을 - 날짜 -timestamp

HADOOP

Sqoop을 - 날짜 -timestamp

나는 하둡에 대한 오라클의 데이터에 Sqoop을 위해 노력하고 있어요. ''10 / 01 / 2015 12:00:00 오전 : 오라클 측에서 날짜 필드는 형식 소인입니다. 어떻게 단지 년, 월, 일에 필터를 배치해야합니까?

필터에 시간과 분을 필요로하지 않는다, 그러나 HDFS에로드되는 데이터는 2015년 10월 1일 오전 12시 0분 0초 '형식을 가질 필요가있다. 어떤 생각? 나는이 형식을 찾을 수 없습니다, 다른 유래를 바라 보았다. 감사!!

아래의 코드를 참조하십시오. 나는 어떤 결과를 얻을 수 없습니다.

sqoop import \
   --compress \
   --target-dir /tmp/inbound/employee \
   --query "SELECT EMPLOYEE_ID,NAME,ZIP_CODE,START_DATE FROM TEST_DB_A.EMPLOYEE WHERE EMPLOYEE_ID = '12345' and ACTIVE_EMP = 'YES' and CAST(START_DATE as DATE) = '2015-10-01'  and \$CONDITIONS" \
   --connect jdbc:oracle:thin:@xyz.xyz.com:11234/TEST \
   --username 'xyz' \
   --password 'xyz' \
   --hive-drop-import-delims -m 1 \
   --fields-terminated-by , \
   --escaped-by \\ \
   --split-by EMPLOYEE_ID

해결법

  1. ==============================

    1.우리는 오라클 측에 TO_CHAR () 함수를 사용할 수 있습니다 :

    우리는 오라클 측에 TO_CHAR () 함수를 사용할 수 있습니다 :

    사용하다:

    to_char(START_DATE, 'mm/dd/yyyy hh:mi:ss am')
    

    대신에:

    START_DATE
    
  2. from https://stackoverflow.com/questions/45200496/sqoop-date-timestamp by cc-by-sa and MIT license