Oracle 11G での INSERT SELECT ステートメントのトラブルシューティング
Oracle 11G で INSERT SELECT ステートメントを実行しようとすると、「ORA- 00936: 式がありません」エラー。このエラーは通常、ステートメントの構文に問題があることを示します。
この問題を解決するには、ステートメントを注意深く調べてください。よくある間違いの 1 つは、INSERT SELECT ステートメントに VALUES キーワードを含めることです。 Oracle では、VALUES キーワードはテーブルに明示的な値を挿入する場合にのみ使用され、別のテーブルから値を選択する場合には使用されません。
INSERT SELECT ステートメントの正しい構文は次のとおりです。
INSERT INTO table_name (column_list) SELECT column_list FROM source_table;
したがって、ステートメントは次のように変更する必要があります:
INSERT INTO table1 (col1, col2) SELECT t1.col1, t2.col2 FROM oldtable1 t1, oldtable2 t2;
この修正された構文は、 oldtable1 と oldtable2 の間のデカルト結合を行い、結果の行を table1 に挿入します。
以上がOracle 11g INSERT SELECT ステートメントで ORA-00936 エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。