Sqoop - 日期 - 时间戳

时间:2017-07-19 20:33:24

标签: hadoop hdfs sqoop

我正在尝试将Oracle中的数据sqoop到Hadoop中。 在Oracle方面,日期字段是时间戳,格式为:'10 / 01/2015 12:00:00 AM'。我如何在月,日和年上放置过滤器?

过滤器中不需要小时和分钟,但加载到HDFS的数据需要具有10/01/2015 12:00:00 AM格式。任何的想法?我查看了其他stackoverflow,没有找到它这种格式。谢谢!

请参阅下面的代码。我没有得到任何结果。

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 个答案:

答案 0 :(得分:0)

我们可以在Oracle端使用to_char()函数:

使用:

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

而不是:

START_DATE