AND \$CONDITIONS in sqoop import 有待澄清,没有导入,为什么?

AND \$CONDITIONS in sqoop import to be clarified, nothing imported, why?

我只做m=1,也就是说这会强制非平行导入,对吧? 我的 table 有 500000 行,我只想在自由查询中使用 where 条件导入一部分,这是我的命令:

sqoop import --connect jdbc:mysql://localhost/employees --username root -P --query 'select emp_no, title from titles where "emp_no < 10020 AND $CONDITIONS"' --target-dir /title_set --m 1;

当我检查结果时,它显示为空,但确实有一个 _SUCCESS 文件: 我的导入脚本有什么问题?

有两种使用 sqoop import 编写查询的方法,按如下方式更新您的查询。

1) 将查询包含在单引号中。

'select emp_no, title from titles where emp_no < 10020 AND $CONDITIONS'

2) 在双引号中包含查询。

"select emp_no, title from titles where emp_no < 10020 AND $CONDITIONS"

以下内容来自 Sqoop 文档。

如果您发出用双引号 (") 括起来的查询,您将不得不使用 \$CONDITIONS 而不是 $CONDITIONS 来禁止您的 shell 将其视为 shell变量。例如,双引号查询可能如下所示:"SELECT * FROM x WHERE a='foo' AND $CONDITIONS"