PostgreSQL INSERT: テーブルへのデータの挿入

PostgreSQL INSERT ステートメント

In PostgreSQL、insert ステートメントは、テーブルに新しい行を挿入するのに役立ちます。値式で指定した行、ゼロ行、またはクエリの結果として得られる複数の行を挿入できます。

の構文 PostgreSQL INSERT INTO

INSERT INTO TABLE_NAME (column1, column2, ...columnN)
VALUES (value1, value2,...valueN);

上記の構文で、列 1 ~ N が、データを挿入するテーブル内の列の名前であることがわかります。 ターゲット列は、特定の順序でリストする必要があります。 クエリまたは値句によって指定される値は、列に対応する値のいずれかです。

クエリが実行されると、出力メッセージが表示されます。

Insert oid 1

この出力メッセージは次のように表示されます。yed 単一行のみが挿入される場合、oid は挿入された行に割り当てられた数値 OID になります。

の例 PostgreSQL 表に挿入

以下を検討してくださいwing テーブル「チュートリアル」には XNUMX つの列があります。

「id」整数 デフォルト値 1
「tutorial_name」テキスト DEFAULT 値 postgre
そして制約はありません

PostgreSQL 表に挿入

ここでは、次の手順を示します PostgreSQL テーブルに挿入:

ステップ1) 行を挿入する

INSERT INTO tutorials(id, tutorial_name) VALUES (1, 'postgre');

PostgreSQL 表に挿入

注意: 行を挿入するときに一重引用符で囲む必要があるのは、文字または日付値のみです。

ステップ2) ただし、すべての列にデータを挿入する場合は、列名を省略できます。 同じ挿入ステートメントは次のように書くこともできます。

INSERT INTO tutorials VALUES (1, 'postgre');

PostgreSQL 表に挿入

ステップ3) データ値は、テーブルに列が表示される順序でカンマで区切られてリストされます。

上記の構文には、テーブル内の列の順序を知る必要があるという問題があります。 この問題を解決するには、列を明示的にリストすることもできます。

たとえば、以下のコマンドは両方とも displa と同じ効果があります。yed 以下:

INSERT INTO tutorials(id, tutorial_name) VALUES (1, 'postgre');
INSERT INTO tutorials(tutorial_name, id) VALUES ('postgre',1);

PostgreSQL 表に挿入

ステップ4) この例では、すべての列に値がない場合は、一部の列を省略できることがわかります。

その場合、指定されていれば、列にはデフォルト値が自動的に入力されます。

INSERT INTO tutorials(id) VALUES (5);

PostgreSQL 表に挿入

ステップ5) 個々の列または行全体のデフォルト値をリクエストすることもできます。

INSERT INTO tutorials(id, tutorial_name) VALUES (1, DEFAULT);
INSERT INTO tutorials DEFAULT VALUES;

PostgreSQL 表に挿入

ステップ6) 単一のコマンドで複数の行を作成できます。

INSERT INTO tutorials(id, tutorial_name) VALUES
(1, 'postgre'),
(2, 'oracle'),
(3, 'mysql'),
(4, 'mongo');

PostgreSQL 表に挿入

ステップ7) In PostgreSQL、行がないか、XNUMX 行、または複数行である可能性のあるクエリの結果を挿入することもできます。

INSERT INTO tutorials (id, tutorial_name)
SELECT id, tutorial_name FROM tutorials
WHERE tutorial_name = 'mysql';

PostgreSQL 表に挿入

PostgreSQL pgAdmin を使用してステートメントを挿入

ここでは、ステートメントを挿入する手順を示します。 Postgre SQL の pgAdmin

ステップ1) オブジェクトツリー内

  1. データを挿入したいテーブルを右クリックします
  2. スクリプトの選択
  3. スクリプトの挿入

PostgreSQL pgAdmin を使用してステートメントを挿入

ステップ2) 挿入パネル内

  1. クエリを編集する
  2. 照明ボタンをクリックします
  3. 出力を観察する

PostgreSQL pgAdmin を使用してステートメントを挿入

ステップ3) [ツール] > [クエリ ツール] に移動してクエリ エディターを開くこともできますが、デフォルトの挿入クエリは表示されません。

PostgreSQL pgAdmin を使用してステートメントを挿入

まとめ

コード/パラメータ/ヒント 説明
INSERT INTO TABLE_NAME (column1、column2、…columnN)
VALUES (値1、値2、…値N);
テーブルに値を挿入するために使用されます
INSERT INTO チュートリアル(id,tutorial_name) VALUES(1, 'postgre');
INSERT INTO チュートリアル(tutorial_name, id) VALUES ('postgre',1);
列の順序は重要ではありません。 どちらも同じ効果になります。
INSERT INTO チュートリアル VALUES (1, 'postgre'); すべての列に値を指定する場合は、指定する必要はありません。
INSERT INTO チュートリアル (id,tutorial_name)
チュートリアルから ID、チュートリアル名を選択します
WHERE チュートリアル名 = 'mysql';
INSERT クエリでは、名前で参照される単一または複数のサブクエリを指定できます。
デフォルト値 この句を使用して、すべての列にデフォルト値を入力します。
表現 対応する列に割り当てる必要がある値と式。
オメデフォルト デフォルト句は、対応する列にデフォルト値が入力される場合に使用されます。