1. where条件部分导入HDFS
我们可以导入表时使用Sqoop导入工具,"where"子句的一个子集。它执行在各自的数
据库服务器相应的SQL查询,并将结果存储在HDFS的目标目录。
sqoop import \
--connect jdbc:mysql://192.168.52.150:3306/test \
--username root --password 123456 --table emp_add \
--target-dir /sqoop/emp_add -m 1 --delete-target-dir \
--where "city = 'sec-bad'"
2. sql语句查找导入hive表
我们还可以通过 –query参数来指定我们的sql语句,通过sql语句来过滤我们的数据进行导入
sqoop import \
--connect jdbc:mysql://192.168.52.150:3306/test --username root --password 123456 \
--query "select * from emp where id>1203 and \$CONDITIONS" \
--fields-terminated-by '\t' \
--hcatalog-database sqooptohive \
--hcatalog-table emp_hive \
-m 1
注意:有时候where后面如果没有条件的话 就用 where 1 = 1 代替 代表true 引出后面 and \$CONDITIONS
使用sql语句来进行查找时不能加参数--table
并且必须要添加where条件,
并且where条件后面必须带一个$CONDITIONS 这个字符串,
并且这个sql语句如果使用双引号,则要修改为\$CONDITIONS