MySQLでビュー(VIEW)を作成する方法をわかりやすく解説
MySQLでビューを作成する方法
MySQLでビュー(VIEW)を作成するには、CREATE VIEWコマンドを使用します。ビューとは、SELECT文の実行結果を仮想的なテーブルとして定義する機能です。複雑なクエリをシンプルにしたり、特定の列だけをユーザーに公開したりする場合に非常に便利です。
CREATE VIEWの基本構文
ビューを作成する際の基本構文は以下の通りです。
CREATE VIEW yourViewName as SELECT yourColumName1, yourColumName2, yourColumName3,...... yourColumNameN from yourTableName;
サンプルテーブルの作成
上記の構文を理解するために、まずは動作確認用のテーブルを作成しましょう。以下がテーブル作成用のクエリです。
mysql> create table ViewDemo -> ( -> Id int, -> Name varchar(200), -> Age int -> ); Query OK, 0 rows affected (0.58 sec)
この例では、「Id」「Name」「Age」の3つの列を持つ「ViewDemo」というテーブルを作成しました。
ビューの作成
続いて、先ほどの構文を実際に使ってビューを作成します。MySQLでビューを作成するクエリは以下の通りです。
mysql> create view LookUpTable as select Id,Name from ViewDemo; Query OK, 0 rows affected (0.15 sec)
ここでは、ViewDemoテーブルから「Id」と「Name」の2つの列のみを抽出した「LookUpTable」というビューを作成しています。「Age」列はビューに含まれていないため、このビュー経由では参照できません。
ビューが作成されたか確認する
最後に、SHOWコマンドを使ってビューが正しく作成されているかどうかを確認しましょう。クエリは以下の通りです。
mysql> show create table LookUpTable;
実行結果は以下のようになります。
+-------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+----------------------+----------------------+ | View | Create View | character_set_client | collation_connection | +-------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+----------------------+----------------------+ | lookuptable | CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`%` SQL SECURITY DEFINER VIEW `lookuptable` AS select `viewdemo`.`Id` AS `Id`,`viewdemo`.`Name` AS `Name` from `viewdemo` | utf8 | utf8_general_ci | +-------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+----------------------+----------------------+ 1 row in set (0.00 sec)
出力結果から、LookUpTableビューがViewDemoテーブルのId列とName列を参照するSELECT文として定義されていることが確認できます。
なお、データベース内のビュー一覧を確認したい場合は「SHOW FULL TABLES WHERE Table_type = 'VIEW';」、不要になったビューを削除したい場合は「DROP VIEW ビュー名;」を使用すると便利です。
-
MySQLコマンドラインでデータベースを作成する方法を初心者向けに解説
MySQLコマンドラインでデータベースを作成する手順 この記事では、WindowsのコマンドプロンプトからMySQLに接続し、データベースを作成する一連の手順をスクリーンショット付きで解説します。初心者の方でも迷わず進められるよう、順番に見ていきましょう。 1. コマンドプロンプトを開く まず、コマンドプロンプトを起動します。キーボードのショートカット「Windows + R」キーを押すと、「ファイル名を指定して実行」ダイアログが表示されます。 2. 「CMD」と入力してOKをクリック 表示された入力欄に CMD と入力し、「OK」ボタンをクリックしてください。 3. コマンドプロンプトが
-
MySQLでシーケンスを作成する方法|AUTO_INCREMENTの使い方とルールを解説
MySQLにおけるシーケンスとは?MySQLにおける「シーケンス」とは、1(指定した場合は0)から始まり、昇順で自動生成される整数の連番のことです。多くのアプリケーションでは、レコードを一意に識別するための番号を発行する目的でシーケンスが利用されています。具体例代表的な例としては、CRMシステムの顧客ID、人事管理システムの社員番号、設備管理システムの機器番号などが挙げられます。MySQLでシーケンスを自動的に作成するには、対象のカラムにAUTO_INCREMENT属性を設定します。通常は、主キー(PRIMARY KEY)カラムに対して適用するのが一般的です。AUTO_INCREMENTを使用