partition (src!='a')
- "select *" の結果を "a" の代わりに任意のパーティションに書き込むには、Hive に何を期待しますか? ご覧 partition (src='a')
のとおり、「a」という名前のテーブルのパーティションに select ステートメントを実行した結果を書き込んでいることを意味します。「PARTITION (a=b)」は「WHERE a=b」のような条件付きコマンドではなく、パーティションの名前を指定するだけです。別のパーティション名を指定するだけなので、クエリは次のようになります。
from sample_table insert overwrite table sample1 partition (src='a') select * where act=10 insert overwrite table sample1 partition (src='b') select * where act=20;
その後、テーブル "sample1" に 2 つの新しいパーティション "a" と "b" が表示され、これらのパーティションselect * where act=10
とselect * where act=20
クエリからのデータがそれぞれ表示されます。