INSERT#
Синтаксис#
INSERT INTO table_name [ ( column [, ... ] ) ] query
Описание#
Вставляет строки в таблицу.
Источником строк может быть произвольный запрос SELECT
, или
фиксированный список записей, передаваемый выражением VALUES
.
Список колонок является опциональным. Если список колонок не указан
явно, то в качестве него будут использованы все колонки таблицы в
порядке, аналогичном порядку колонок, возвращаемых командой
SHOW COLUMNS. Если список колонок не
содержит некоторые колонки таблицы, то при вставке в них будут записаны
значения null
.
Если тип вставляемого значения не совпадает с типом колонки, будет осуществлена попытка автоматического приведения типа значения к типу колонки. Если автоматическое приведение типов невозможно или приводит к неожиданному изменению значения, будет возвращена ошибка.
Примеры#
Вставка строк в таблицу orders
из таблицы new_orders
:
INSERT INTO orders
SELECT * FROM new_orders;
Вставка одной строки в таблицу cities
:
INSERT INTO cities VALUES (1, 'San Francisco');
Вставка нескольких строк в таблицу cities
:
INSERT INTO cities VALUES (2, 'San Jose'), (3, 'Oakland');
Вставка одной строки в таблицу nation
с явно заданным списком
столбцов:
INSERT INTO nation (nationkey, name, regionkey, comment)
VALUES (26, 'POLAND', 3, 'no comment');
Вставка одной строки в таблицу nation
с явно заданным списком
столбцов, но без указания столбца comment
. В столбец comment
будет
записано значение null
:
INSERT INTO nation (nationkey, name, regionkey)
VALUES (26, 'POLAND', 3);