「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

ビュー【DB】

pointこの用語のポイント

pointselect文に付けた、あだ名だよ

point元々あるテーブルを使って作った仮想的なテーブル……とか説明される場合もあるよ

pointデータベースの話で出てくるよ

スポンサーリンク

簡単に書くよ

ビュー【DB】(英:view)とは

元々あるテーブル(データベースにおける実際にデータが入っている箱)から任意のデータを取り出したり組み合わせたりして作った仮想的なテーブル
とか説明される場合もありますが、身も蓋もないことを書くと

select文(データベースさんに対する「これ、探してこい」な命令文)に付けた、あだ名
です。


image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として

データベース
テーブル
SQL
SQL文クエリ
select文


について結構ガッツリ説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。

データベースは「データを入れておく箱」です。

ビュー

ただし「データベース」という用語は、実際には もう少し複雑な概念です。
データを入れておく箱そのものは「テーブル」と言います。

ビュー2

とりあえず

データベースの話において、実際にデータを入れておく箱がテーブル

と覚えてください。

SQLは「データベースと やり取りするときに使う言葉」です。

ビュー3

データベースにデータを入れるときは、データベースさんに「これを入れておいて」と命令します。
データベースからデータを取り出すときは、データベースさんに「こんなデータを取り出しておくれ」と命令します。
SQLは、そんな命令をするときに使う言葉です。

SQL文は「データベースに対する、SQLを使った命令文」です。
クエリ」とも呼ばれます。

ビュー4

「SQL」と「SQL」は違います。
あまり神経質になる必要はありませんが、区別できるように しておいてください。

SQLは「言語」です。
SQL文は「命令(文)」です。

ビュー5

例えば、そうですね。
ピヨ子さんがピヨ太君に日本語で「パン買ってこい!」と命令したとしましょう。

ビュー6

ピヨ子さんが人間、ピヨ太君がデータベースだとすれば「日本語」が「SQL」です。
「パン買ってこい!な命令」が「SQL文」になります。

ビュー7

select文はデータベースさんに対する「これ、探してこい」な命令文です。
データベースの中にあるデータを取り出すときに使います。

ビュー8

select文の基本的な書式は以下の通りです。

SELECT
 【取り出す項目】
FROM
 【対象のテーブル】
WHERE
 【取り出す条件】
;


例えば

SELECT
 column1
FROM
 tbl1
WHERE
 ID = 1
;


というselect文が あったとしましょう。

これは

「tbl1」という名前のテーブルから「項目『ID』の値が1」な条件に合うデータを選んで、選び出されたデータの項目「column1」の値を取り出してよ

な命令です。

ビュー9

以上を踏まえて

select文に付けた、あだ名

が「ビュー(view)」です。
今の段階ではピンと来ないかもしれませんが、気にせず読み進めてください。

ビュー10

ビューを作りたいときは

CREATE VIEW 【ビューの名前】 AS 【select文】;

を実行すれば、【ビューの名前】という名前のビューができます。

反対にビューを削除したいときは

DROP VIEW 【ビューの名前】;

を実行すれば、なくなります。

それを踏まえて、実際の例を見てみましょう。

例えば、そうですね。

項目として「ID」と「名前」と「性別」を持つテーブル「会員テーブル」が ありました。

ビュー11

この状態で

CREATE VIEW 会員ビュー AS SELECT ID, 名前 FROM 会員テーブル;

を実行すると「会員ビュー」という名前のビューが作られます。

ビュー12

この状態で

SELECT * FROM 会員ビュー;

とかやって会員ビューの中身を見ると、会員テーブルと同じデータが表示されます。
ただし、項目は「ID」と「名前」しかありません。

SELECT ID, 名前 FROM 会員テーブル;

をやった結果と同じ結果が表示されます。

ビュー13

さらに

SELECT
 名前
FROM
 会員ビュー
WHERE
 ID = 1
;


を実行しました。
このselect文は

「会員ビュー」から「項目『ID』の値が1」な条件に合うデータを選んで、選び出されたデータの項目「名前」の値を取り出してよ

な命令です。

実は、この命令は

SELECT
 名前
FROM
 (
  SELECT
   ID, 名前
  FROM
   会員テーブル

 )
WHERE
 ID = 1
;


と指定したのと実質的に同じです。

『SELECT ID, 名前 FROM 会員テーブル』の結果」から「項目『ID』の値が1」な条件に合うデータを選んで、選び出されたデータの項目「名前」の値を取り出してよ

な命令と同じなのです。

さぁ、ここで先ほどの説明を思い出してください。
ビューとは

select文に付けた、あだ名

だと説明しました。

例として挙げた内容では「SELECT ID, 名前 FROM 会員テーブル」と「会員ビュー」が実質的に同じです。
「SELECT ID, 名前 FROM 会員テーブル」というselect文に対して「会員ビュー」というあだ名をつけて使っていると解釈できますよね。

英語の勉強になってしまいますが「as」の意味は(他にも、いろいろありますが)「同様に」とか「~として」とかです。

ビューを作るときの命令文

CREATE VIEW 【ビューの名前】 AS 【select文】;

を無理やり日本語にすると

作るぜ! ビュー 【ビューの名前】 として 【select文】;

です。

何となく良い感じに並べ替えて適当に意訳すると

【select文】として(使える)ビュー【ビューの名前】を作るぜ!

に なります。
【select文】として使える【ビューの名前】を作ると言っていますね。

先ほどの例に当てはめてみましょう。

CREATE VIEW 会員ビュー AS SELECT ID, 名前 FROM 会員テーブル;



「SELECT ID, 名前 FROM 会員テーブル」として(使える)ビュー「会員ビュー」を作るぜ!

な命令文です。

おぉ、それっぽいですね。

ということで、ビューはselect文の仮の姿です。
ビューの裏側にはselect文が隠れています。


image piyo2

一言でまとめるよ

まぁ「ビュー(view)」って単語が出てきたら「select文(データベースさんに対する「これ、探してこい」な命令文)に付けた、あだ名なんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像006
書籍画像054

おまけ

■訳してみるよ

「view(ビュー)」の意味は

・見る
・眺める
・見ること
・視界
・視野
・眺め
・景色


とかです。




書籍画像
わわわ説明術コラム
宣伝だよ
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本【Audible】
つくって、壊して、直して学ぶ Kubernetes入門
クイズで学ぶUIデザイン ユーザビリティの基本が身につく50問