【SQL】ビュー(VIEW)とは

ビューとは

ビューとは、実テーブルから作成される仮想的なテーブルのことです。

ビューはあくまでも仮想テーブルなので、その中にデータは存在しません。

ビューは実テーブルをどのように見るかを定義したものと言えます。

 

ビューを使用するメリット

ビューの実体は、SELECT文によるクエリを定義したものです。

ビューにアクセスすると、定義されたクエリが実行され、実テーブルから必要なデータが抽出されます。

また、ビューからビューを定義することも可能です。

そのため、あらかじめ毎回入力するのが大変なクエリを一度ビューとして定義しておくことでユーザーやプログラムは単純なクエリを実行するだけですみます。

ビューはセキュリティ面においてもメリットがあります。

実テーブルの中に一般ユーザーには見せたくないものがある場合、実テーブルへのアクセス制限を一般ユーザーには与えることはできません。

しかし、見せたくないデータを除いたビューを定義することにより、一般ユーザーでも実テーブルのデータを利用できるようになります。

 

ビューの作成

ビューを作成するには、「CREATE VIEW文」もしくは「CREATE OR REPLACE VIEW文」を使用します。

OR REPLACE」を付けることで、指定したビュー名のビューがすでに存在する場合にビューの変更を行います。

実際の開発現場では、「OR REPLACE」を付けることが多いです。

CREATE OR REPLACE VIEW ビュー名 AS
  SELECT カラム名1, カラム名2
  FROM テーブル名
  WHERE 条件;

上記のように記述することで、ビューを作成することができます。

実際には、下記のように内部結合および外部結合を行い複数のテーブルから1つのビューを作成することが多いです。

CREATE OR REPLACE VIEW ビュー名 AS
  SELECT カラム名1, カラム名2
  FROM テーブル名1
  LEFT JOIN テーブル名2
  LEFT JOIN テーブル名3
  WHERE 条件;

 

ビュー(VIEW)ではなくWITH句を用いる方法もある

データを抽出する際、ビューとは別にWITH句を用いる方法もあります。

詳しくは、以下の記事を参考ください。

【PostgreSQL】WITH句の使い方(WITH句を複数回使用する方法)

2021.06.03

 

おすすめ書籍・Udemy

■おすすめ入門書①
スッキリわかるSQL入門 第2版 ドリル222問付き! (スッキリシリーズ)

■おすすめ入門書②
いちばんやさしい SQL 入門教室

■おすすめ入門書③
ゼロからわかる SQL超入門 (かんたんIT基礎講座)

 

■Udemyのおすすめ講座①
はじめてのテーブル設計・データベース設計

■Udemyのおすすめ講座②
3時間で学ぶ SQL ・データベース 超入門

■Udemyのおすすめ講座③
はじめてのSQL ・データ分析入門