標準構文:
上書きテーブルの挿入tablename1 [PARTITION(partcol1 = val1、partcol2 = val2 ...)[IF NOT EXISTS]] select_statement1 FROM from_statement;
INSERT INTO TABLE tablename1 [PARTITION(partcol1 = val1、partcol2 = val2 ...)] select_statement1 FROM from_statement;
INSERT INTO TABLE tablename1 [PARTITION(partcol1 = val1、partcol2 = val2 ...)](z、y)select_statement1 FROM from_statement;
ハイブ拡張(複数の挿入):
FROM from_statement
上書きテーブルの挿入tablename1 [PARTITION(partcol1 = val1、partcol2 = val2 ...)[存在しない場合]] select_statement1
[INSERT OVERWRITE TABLE tablename2 [PARTITION ... [存在しない場合]] select_statement2]
[INSERT INTO TABLE tablename2 [PARTITION ...] select_statement2] ...;
FROM from_statement
INSERT INTO TABLE tablename1 [PARTITION(partcol1 = val1、partcol2 = val2 ...)] select_statement1
[INSERT INTO TABLE tablename2 [PARTITION ...] select_statement2]
[上書きテーブルを挿入するtablename2 [パーティション... [存在しない場合]] select_statement2] ...;
ハイブ拡張(動的パーティション挿入):
INSERT OVERWRITE TABLE tablename PARTITION(partcol1 [= val1]、partcol2 [= val2] ...)select_statement FROM from_statement;
INSERT INTO TABLE tablename PARTITION(partcol1 [= val1]、partcol2 [= val2] ...)select_statement FROM from_statement;
上書きを挿入する
insert overwrite文は、使用されるselect文に基づいて新しいファイルを追加する前に、ターゲット表またはパーティション内の既存のファイルを削除します。表または表をロードするために使用されるDMLに構造変更があって、古いファイルが削除されないことがあることに注意してください。動的パーティション化を使用してテーブルにロードする場合、selectステートメントで定義されたパーティションだけが上書きされます。ターゲット内の既存のパーティションはそのまま残り、削除されません。
挿入する
insert into文は、使用されるselect文に基づいて新しいデータをターゲット表に追加します。