将 RDBMS 表的子集导入 HDFS
使用 --where
标签
sqoop import \
--connect <rdbms-jdbc-url> \
--username <username> \
--password <password> \
--table <table-name> \
--where "<condition>"
Mysql 示例:
sqoop import \
--connect jdbc:mysql://mysql.example.com/testdb \
--username root \
--password root \
--table employees \
--where "country = 'INDIA'"
--where
子句中可以使用任何特殊函数,转换甚至用户定义函数。
使用自由格式查询
sqoop import \
--connect <rdbms-jdbc-url> \
--username <username> \
--password <password> \
--query <sql-query> \
--target-dir <target-dir>
Mysql 示例:
sqoop import \
--connect jdbc:mysql://mysql.example.com/testdb \
--username root \
--password root \
--query "SELECT emplyoees.name, \
address.city \
FROM emplyoees \
JOIN address USING(emp_id) \
WHERE \$CONDITION" \
--taget-dir /dev/data/employees