В этом учебном материале вы узнаете, как использовать в SQL оператор CREATE TABLE AS с синтаксисом и примерами.
Описание
Вы также можете использовать SQL оператор CREATE TABLE AS, чтобы создать таблицу из существующей таблицы путем копирования столбцов существующей таблицы.
Важно отметить, что при создании таблицы таким способом новая таблица будет заполняться записями из существующей таблицы (на основе оператора SELECT).
Создать таблицу - путем копирования всех столбцов из другой таблицы
Синтаксис
Синтаксис для оператора CREATE TABLE AS при копировании всех столбцов из другой таблицы в SQL.
AS (SELECT * FROM old_table);
Пример
Давайте посмотрим на пример, который показывает, как создать таблицу путем копирования всех столбцов из другой таблицы.
Например.
1 2 3 4 |
CREATE TABLE suppliers AS (SELECT * FROM companies WHERE id > 1000); |
Это создаст новую таблицу suppliers, в которую будут включены все столбцы из таблицы companies.
Если бы в таблице companies были записи, то новая таблица suppliers также будет содержать записи, выбранные оператором SELECT.
Создать таблицу - путем копирования выбранных столбцов из другой таблицы
Синтаксис
Синтаксис для оператора CREATE TABLE AS, копирующего выбранные столбцы.
AS (SELECT column_1, column2, ... column_n
FROM old_table);
Пример
Давайте посмотрим на пример, который показывает, как создать таблицу путем копирования выбранных столбцов из другой таблицы.
Например.
1 2 3 4 5 6 7 8 |
CREATE TABLE suppliers AS (SELECT id, address, city, state, zip FROM companies WHERE id > 1000); |
Это создаст новую таблицу suppliers, но новая таблица будет включать только указанные столбцы из таблицы companies.
Опять же, если бы в таблице companies были записи, то новая таблица suppliers также будет содержать записи, выбранные оператором SELECT.
Создать таблицу - путем копирования выбранных столбцов из нескольких таблиц
Синтаксис
Синтаксис для оператора CREATE TABLE AS, копирующего столбцы из нескольких таблиц.
AS (SELECT column_1, column2, ... column_n
FROM old_table_1, old_table_2, ... old_table_n);
Пример
Давайте посмотрим на пример, который показывает, как создать таблицу путем копирования выбранных столбцов из нескольких таблиц.
Например.
1 2 3 4 5 6 7 |
CREATE TABLE suppliers AS (SELECT companies.id, companies.address, categories.cat_type FROM companies, categories WHERE companies.id = categories.id AND companies.id > 1000); |
Это создаст новую таблицу suppliers, основанную на столбцах таблиц companies и categories.
Часто задаваемые вопросы
Вопрос: Как я могу создать таблицу SQL из другой таблицы, не копируя значения из старой таблицы.
Ответ: Синтаксис SQL CREATE TABLE.
AS (SELECT *
FROM old_table WHERE 1=0);
Например.
1 2 3 |
CREATE TABLE suppliers AS (SELECT * FROM companies WHERE 1=0); |
Это создаст новую таблицу suppliers, в которую будут включены все столбцы из таблицы companies, но без данных из таблицы companies.