INSERT

语法概要

INSERT INTO table_name [ ( column [, ... ] ) ] query

说明

向表中插入新行。

如果指定了列名列表,它必须与查询产生的列列表完全匹配。表中未出现在列名列表中的每一列都会填入 null 值。否则,如果未指定列列表,查询产生的列必须与被插入表中的列完全匹配。

示例

new_orders 表向 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');

插入一行但不指定 comment 列。该列将为 null:

INSERT INTO nation (nationkey, name, regionkey)
VALUES (26, 'POLAND', 3);

另请参阅

VALUES