MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLでビュー(VIEW)を作成する方法|CREATE VIEWの基本構文と実行例を解説

MySQLのビュー(VIEW)とは?

ビュー(VIEW)とは、SQLクエリの結果セットをもとに定義される「仮想テーブル」のことです。実際のデータを物理的に保存するわけではなく、元のテーブルへの参照情報のみを保持します。そのため、複雑なクエリをシンプルな名前で呼び出せるようにしたり、ユーザーに見せたい列や行だけを限定して提供したりする際に非常に便利です。

MySQLでビューを作成するには、CREATE VIEW文を使用します。

ビュー作成の基本構文

ビューを作成するための基本構文は以下の通りです。

create view yourViewName as select * from yourTableName;

「yourViewName」には作成したいビュー名、「yourTableName」には元となるテーブル名を指定します。SELECT句の内容を変更すれば、特定の列だけを含むビューも簡単に作成できます。

実際にビューを作成してみよう

ここからは、具体的なサンプルコードを使ってビュー作成の手順を確認していきます。

手順1:サンプルテーブルを作成する

まず、元となるテーブルを作成します。

mysql> create table DemoTable1802
    (
    StudentId int,
    StudentName varchar(20)
    );
Query OK, 0 rows affected (0.00 sec)

手順2:テーブルにデータを挿入する

続いて、INSERTコマンドを使ってレコードを追加します。

mysql> insert into DemoTable1802 values(101,'John');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1802 values(102,'Carol');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1802 values(103,'Sam');
Query OK, 1 row affected (0.00 sec)

手順3:テーブルの中身を確認する

SELECT文で、テーブルに登録されたすべてのレコードを表示してみましょう。

mysql> select * from DemoTable1802;

実行結果は以下の通りです。

+-----------+-------------+
| StudentId | StudentName |
+-----------+-------------+
|       101 | John        |
|       102 | Carol       |
|       103 | Sam         |
+-----------+-------------+
3 rows in set (0.00 sec)

手順4:ビューを作成する

いよいよ、このテーブルをもとにビューを作成します。以下のクエリを実行してください。

mysql> create view view_DemoTable1802 as select * from DemoTable1802;
Query OK, 0 rows affected (0.00 sec)

手順5:ビューからデータを取得する

作成したビューに対しても、通常のテーブルと同じようにSELECT文が使えます。

mysql> select * from view_DemoTable1802;

実行結果は以下の通りです。

+-----------+-------------+
| StudentId | StudentName |
+-----------+-------------+
|       101 | John        |
|       102 | Carol       |
|       103 | Sam         |
+-----------+-------------+
3 rows in set (0.00 sec)

元のテーブルと同じ結果が取得できました。これでビューの作成は完了です。

まとめ

MySQLでビューを作成するには、CREATE VIEW文にSELECT文を組み合わせるだけでOKです。ビューを活用することで、頻繁に使う複雑なクエリを再利用しやすくなり、アプリケーション側のコードもすっきりと整理できます。ぜひ日々の開発に取り入れてみてください。

  1. MySQLコマンドラインでデータベースを作成する方法を初心者向けに解説

    MySQLコマンドラインでデータベースを作成する手順 この記事では、WindowsのコマンドプロンプトからMySQLに接続し、データベースを作成する一連の手順をスクリーンショット付きで解説します。初心者の方でも迷わず進められるよう、順番に見ていきましょう。 1. コマンドプロンプトを開く まず、コマンドプロンプトを起動します。キーボードのショートカット「Windows + R」キーを押すと、「ファイル名を指定して実行」ダイアログが表示されます。 2. 「CMD」と入力してOKをクリック 表示された入力欄に CMD と入力し、「OK」ボタンをクリックしてください。 3. コマンドプロンプトが

  2. MySQLでシーケンスを作成する方法|AUTO_INCREMENTの使い方とルールを解説

    MySQLにおけるシーケンスとは?MySQLにおける「シーケンス」とは、1(指定した場合は0)から始まり、昇順で自動生成される整数の連番のことです。多くのアプリケーションでは、レコードを一意に識別するための番号を発行する目的でシーケンスが利用されています。具体例代表的な例としては、CRMシステムの顧客ID、人事管理システムの社員番号、設備管理システムの機器番号などが挙げられます。MySQLでシーケンスを自動的に作成するには、対象のカラムにAUTO_INCREMENT属性を設定します。通常は、主キー(PRIMARY KEY)カラムに対して適用するのが一般的です。AUTO_INCREMENTを使用