Oracle では、into ステートメントは、select から指定された行の結果セットを新しいテーブルにコピーできます。構文は、「Insert into Table2(field1,field2...) select value1,value2,..」です。 from Table1"; 行の結果を変数にコピーすることもできます。構文は "SELECT vale1, value2 into Table2 from Table1" です。
このチュートリアルの動作環境: Windows 10 システム、Oracle バージョン 12c、Dell G3 コンピューター。
通常、insert into select と select into from の 2 つの方法があります。
前者は選択した N 行 (0 から任意の数) の結果セットを新しいテーブルにコピーできますが、後者は「1 行」の結果を変数にコピーすることしかできません。言い換えると、select into は PL/SQL 言語の代入文です。前者は標準の SQL ステートメントです。
1.INSERT INTO SELECT ステートメント
ステートメントの形式は次のとおりです: Insert into Table2(field1,field2,...) select value1,value2,... from Table1
注:
(1) ターゲット テーブル Table2 が存在する必要があり、フィールド field, field2... も存在する必要があります
(2) 次の点に注意してください。 Table2 の主キー制約。Table2 に主キーがあり、空でない場合、フィールド 1、フィールド 2... には主キーが含まれている必要があります。
(3) 構文に注意し、値を追加しないでください。データを挿入する SQL と混同されますので、次のようには書かないでください:
Insert into Table2(field1,field2,...) names (select value1,value2,...) from Table1)
ターゲット テーブル Table2 は既に存在するため、ソース テーブル Table1 の挿入は除きます。フィールドに加えて、定数も挿入できます。
2.SELECT INTO FROM ステートメント
ステートメントの形式は次のとおりです: SELECT vale1, value2 into Table2 from Table1
必要なターゲット テーブル Table2 は、テーブル Table2 は挿入中に自動的に作成され、Table1 の指定されたフィールド データが Table2 にコピーされるため、存在します。
推奨チュートリアル: 「Oracle ビデオ チュートリアル 」
以上がOracleでintoステートメントを使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。