MySQLでは、既存のテーブルから新しいテーブルをどのように生成しますか?
在MySQL中,可以使用CREATE TABLE语句来生成新表,可以利用现有表的数据来生成新表。下面是一个示例:
まず、データを含む複数のカラムを持つoriginal_tableという既存のテーブルがあると仮定します。
新しいテーブルを追加するには次の構文を使用します。
CREATE TABLE new_table_name AS
SELECT column1, column2, ...
FROM original_table
WHERE condition;
上で説明した構文で、new_table_nameは新しいテーブルの名前、column1, column2, …は元のテーブルから新しいテーブルにコピーされる列名、original_tableは既存のテーブルの名前です。
「WHERE」句を使用して、元テーブルから複製して新しいテーブルに選択する行を指定することもできます。すべての行を複製する場合は、「WHERE」句は省略可能です。
例えば、original_tableにid、name、ageの3つのカラムがあるとすると、nameとageのカラムのみを持つ、かつ年齢が18歳以上の行だけをコピーしたnew_tableという名前の新しいテーブルを生成するには、次のステートメントを使用します。
CREATE TABLE new_table AS
SELECT name, age
FROM original_table
WHERE age >= 18;
この文の実行後、データベースにはnameとageの二列を含むnew_tableという新しいテーブルが生成され、そのテーブルは元のテーブルで年齢が18歳以上の行のみを含みます。