ビーラインを通じて別のハイブクエリの変数としてハイブクエリの出力を使用する必要があります。だから、ビーイングを介して動的にクエリする変数を設定する
select * from 123 where some_variable='select abc from xyz';
のようなものは、しかし、ハイブは句は私が代わりにシェルコマンドを通してそれを行うだろうどこにあるサブクエリをサポートしていません。
my_shell_var=$(hive -S -e "select abc from xyz;")
その後、私は実行します:my_shell_varが包囲されているので、
hive -e "select * from 123 where some_variable=$my_shell_var;"
をしかしビーライン出力が国境を含み、これは、標準のハイブのCLIを使用して十分に簡単ですが、私はちょうどこのような何かをするだろうこのよう
+------+ some output +------+
としてだから、余分な文字が私の文字列を変更するので、私は次のクエリにこれを挿入することはできません。ビーライン出力からボーダーを削除する方法があるのですか、あるいは私が何をしようとしているのかを達成するための代替方法がありますか?
ハイブではなくて、それはハイブ0.13 https://cwiki.apache.org/confluence/display/Hive/LanguageManual+SubQueries興味深い – user3124181
にサブクエリをサポートしていません、EXISTS、NOT EXISTS私は '='を使用していたが、それはうまくいかなかった。 – hlagos
ああから、それはINだけをサポートしていないwhere句 – user3124181