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

MySQLのビューからテーブルを作成する方法を徹底解説!基本構文と実行手順

ビューからテーブルを作成する基本構文

MySQLでは、ビュー(VIEW)をもとに新しいテーブルを簡単に作成できます。基本となる構文は以下の通りです。

create table yourTableName select * from yourViewName;

このように「CREATE TABLE ... SELECT」構文を使うことで、ビューの構造とデータをそのまま新しいテーブルへ复制できます。以下、具体的な手順を見ていきましょう。

ステップ1:サンプルテーブルを作成する

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

mysql> create table DemoTable830(Name varchar(100));
Query OK, 0 rows affected (0.91 sec)

ステップ2:データを挿入する

INSERT文を使って、いくつかのレコードを追加します。

mysql> insert into DemoTable830 values('Chris');
Query OK, 1 row affected (0.41 sec)
mysql> insert into DemoTable830 values('Robert');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable830 values('David');
Query OK, 1 row affected (0.09 sec)
mysql> insert into DemoTable830 values('Mike');
Query OK, 1 row affected (0.16 sec)

ステップ3:データを確認する

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

mysql> select * from DemoTable830;

実行結果は以下のようになります。

+--------+
| Name   |
+--------+
| Chris  |
| Robert |
| David  |
| Mike   |
+--------+
4 rows in set (0.00 sec)

ビューを作成する

次に、このテーブルからビューを作成します。クエリは以下の通りです。

mysql> create view table_view AS select * from DemoTable830;
Query OK, 0 rows affected (0.39 sec)

ビューからテーブルを作成する

それでは、作成したビューをもとに新しいテーブルを作成してみましょう。以下のクエリを実行します。

mysql> create table DemoTable831 select * from table_view;
Query OK, 4 rows affected (1.64 sec)
Records: 4 Duplicates: 0 Warnings: 0

「Records: 4」と表示されている通り、ビュー経由で4件のデータが新しいテーブルにコピーされました。

作成したテーブルの内容を確認する

最後に、ビューから作成されたテーブルのレコードを確認します。

mysql> select * from DemoTable831;

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

+--------+
| Name   |
+--------+
| Chris  |
| Robert |
| David  |
| Mike   |
+--------+
4 rows in set (0.00 sec)

ビューのデータがそのまま新しいテーブルに引き継がれていることが確認できました。

注意点

ポイント:「CREATE TABLE ... SELECT」構文は、ビューだけでなく既存テーブルの複製にも利用できます。ただし、主キーやインデックス、AUTO_INCREMENT属性などの制約は自動的には引き継がれないため、必要に応じて後から「ALTER TABLE」で追加してください。

  1. MySQLでインデックス付きのテーブルを作成する方法を徹底解説

    MySQLでは、テーブル作成後にCREATE INDEX文を使うことで、特定のカラムに対してインデックスを追加できます。検索速度の向上やデータ整合性の確保において、インデックスは非常に重要な役割を果たします。この記事では、基本的な構文から実際の実行例まで、順を追ってわかりやすく解説します。インデックス付きテーブルを作成する基本構文まずテーブルを作成し、その後CREATE INDEX文でインデックスを追加します。基本の構文は以下のとおりです。create table yourTableName ( yourColumnName1 dataType, yourColumnName2 dataTyp

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

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