PostgreSQL 例を使用してビューを作成する
何ですか PostgreSQL 意見?
In PostgreSQL、ビューは疑似テーブルです。これは、ビューが実際のテーブルではないことを意味します。ただし、通常のテーブルとして SELECT することはできます。ビューにはテーブル列のすべてまたは一部を含めることができます。ビューは、複数のテーブルを表すこともできます。
テーブルはベース テーブルと呼ばれます。ビューを作成するときは、クエリを作成して名前を付けるだけでよいため、複雑でよく使用されるクエリをラップするための便利なツールになります。
作成 PostgreSQL ビュー
作成するには PostgreSQL ビューを作成するには、CREATE VIEW ステートメントを使用します。このステートメントの構文は次のとおりです。
CREATE [OR REPLACE] VIEW view-name AS SELECT column(s) FROM table(s) [WHERE condition(s)];
OR REPLACE パラメータは、ビューがすでに存在する場合にビューを置き換えます。 省略した場合、ビューがすでに存在する場合、エラーが返されます。
view-name パラメータは、作成する必要があるビューの名前です。
WHERE 条件はオプションであり、レコードをビューに追加するには条件を満たす必要があります。
以下の価格表を考えてみましょう。
価格:
上の表からビューを作成してみましょう。
CREATE VIEW Price_View AS SELECT id, price FROM Price WHERE price > 200;
上記のコマンドは、 SELECTステートメント。 価格が 200 を超えるレコードのみがビューに追加されます。 ビューには Price_View という名前が付けられています。 クエリを実行して内容を確認してみましょう。
SELECT * FROM Price_View;
これにより、次が返されます。
ベース テーブルには 4 つのレコードがありますが、ビューに追加されたのは 2 つだけです。
ここでは、ビューに列を XNUMX つだけ追加できます。 Price テーブルの列を XNUMX つだけ含むビューを作成してみましょう。
CREATE VIEW Price_View2 AS SELECT price FROM Price WHERE price > 200;
ビューには Price_View2 という名前が付けられており、Price テーブルの価格列のみが含まれています。 ビューにクエリを実行して、その内容を確認してみましょう。
SELECT * FROM Price_View2;
これにより、次が返されます。
を変える、 PostgreSQL ビュー
ビューの定義は、削除しなくても変更できます。 これは、CREATE OR REPLACE VIEW ステートメントを使用して行われます。
Price_View2 という名前のビューを更新して、これを実証してみましょう。
価格_ビュー2:
Book テーブルは次のとおりです。
本:
価格表は次のとおりです。
価格:
次のクエリは、ビュー Price_View2 を更新するのに役立ちます。
CREATE or REPLACE VIEW Price_View2 AS SELECT price, name FROM Book INNER JOIN Price ON Book.id = Price.id WHERE price > 200;
次に、ビューにクエリを実行して、その内容を確認してみましょう。
ビューが変更され、XNUMX つの異なるテーブルからの XNUMX つの列が表示されます。 これは、JOIN ステートメントを使用して実現されます。
削除 PostgreSQL ビュー
削除する必要があるときはいつでも、 PostgreSQL ビュー。 DROP VIEW ステートメントを使用できます。ステートメントの構文は次のとおりです。
DROP VIEW [IF EXISTS] view-name;
パラメータ view-name は、削除するビューの名前です。
この構文では、IF EXISTS はオプションです。 必要なだけです。 これを指定せずに、存在しないビューを削除しようとすると、エラーが発生します。
たとえば、Price_View2 という名前のビューを削除するには、次のステートメントを実行します。
DROP VIEW Price_View2;
ビューは削除されます。
pgAdminの使用
ここで、pgAdmin を使用してこれらのアクションをどのように実行できるかを見てみましょう。
作成 PostgreSQL ビュー
pgAdmin を使用して同じことを実行するには、次の手順を実行します。
ステップ1) pgAdmin アカウントにログインします。
ステップ2)
- 左側のナビゲーション バーで、[データベース] をクリックします。
- 「デモ」をクリックします。
ステップ3) クエリ エディターにクエリを入力します。
CREATE VIEW Price_View AS SELECT id, price FROM Price WHERE price > 200;
ステップ4) 「実行」ボタンをクリックします。
ステップ 5) ビューの内容を表示するには、次の手順を実行します。
- クエリ エディターに次のコマンドを入力します。
- 「実行」ボタンをクリックします。
SELECT * FROM Price_View;
次のように返されます。
ビュー Price_View2 を作成するには、次の手順を実行します。
ステップ1) クエリ エディターに次のクエリを入力します。
CREATE VIEW Price_View2 AS SELECT price FROM Price WHERE price > 200;
ステップ 2) 「実行」ボタンをクリックします。
ステップ3) ビューの内容を表示するには、次の手順を実行します。
- クエリ エディターに次のクエリを入力します。
- 「実行」ボタンをクリックします。
SELECT * FROM Price_View2;
次のように返されます。
を変える、 PostgreSQL ビュー
pgAdmin を使用して同じことを実行するには、次の手順を実行します。
ステップ1) pgAdmin アカウントにログインします。
ステップ2)
- 左側のナビゲーション バーで、[データベース] をクリックします。
- 「デモ」をクリックします。
ステップ3) クエリ エディターにクエリを入力します。
CREATE or REPLACE VIEW Price_View2 AS SELECT price, name FROM Book INNER JOIN Price ON Book.id = Price.id WHERE price > 200;
ステップ4) 「実行」ボタンをクリックします。
ステップ5) クエリ エディターに次のクエリを入力します。
SELECT * FROM Price_View2;
次のように返されます。
削除 PostgreSQL ビュー
pgAdmin を使用して同じことを実行するには、次の手順を実行します。
ステップ1) pgAdmin アカウントにログインします。
ステップ2)
- 左側のナビゲーション バーで、[データベース] をクリックします。
- 「デモ」をクリックします。
ステップ3) クエリ エディターにクエリを入力します。
DROP VIEW Price_View2;
ステップ4) 「実行」ボタンをクリックします。
ビューは削除されます。
まとめ
- A PostgreSQL view は疑似テーブルであり、実際のテーブルではないことを意味します。
- ビューは XNUMX つ以上のテーブルから作成できます。
- ビューの作成元となるテーブルはベース テーブルと呼ばれます。
- ビューを作成するには、CREATE OR REPLACE VIEW ステートメントを使用します。
- ビューの定義を変更するには、CREATE OR REPLACE VIEW ステートメントを使用します。
- ビューを削除するには、DROP VIEW ステートメントを使用します。