ビューについてです.

目次

  1. ビュー
    1. ビューの作成
    2. 既に作成されている場合は置き換え
    3. ビューの削除
    4. ビューの更新
  2. サブクエリ
  3. Viewの定義を確認する
  4. 編集
  5. 参考文献

ビュー

ビューはSELECT文を保存したもので,見かけはテーブルです.
作成したビューはFROM句で使用できます.

ビューの作成

CREATE VIEWによりビューを作成します.
AS以下が保存しておく文です.

CREATE VIEW ビュー名
AS
SELECT文;

既に作成されている場合は置き換え

CREATE OR REPLACE VIEW ビュー名 AS SELECT文;

ビューの削除

削除はDROP VIEWです.

DROP VIEW ビュー名;

ビューの更新

ビューはテーブルと連動するので,ビューに更新をかけることができるのはテーブルの更新が特定できる場合に限ります.
言い換えると,集約されたビューは更新できません.
ビューを更新するには,DISTINCTやORDER BY句・HAVING句を含んでいない,FROM句で指定しているテーブルがただ1つという条件が必要となります.

サブクエリ

一時的にビューのようにさせたい場合,クエリの中に直接

( クエリ ) AS 別名

を埋め込むことができます.
これがサブクエリです.

テーブルの部分集合をサブクエリで返して使いたい場合であれば,

SELECT *
FROM ( SELECT文 ) AS サブクエリの別名
WHERE 条件;

のような形になります.

スカラ値を得るサブクエリなら,比較演算子などとあわせて使うこともできます.

Viewの定義を確認する

SELECT definition FROM pg_views WHERE viewname = 'ビューの名称';

とします.

編集

\ev ビュー名

参考文献

SQLの方言に配慮しつつ,リレーショナルデータベースの操作を一から説明している入門書です.

  • ミック (2016)「SQL」第2版,翔泳社.