insert-into
INSERT INTO 语句
INSERT INTO 语句主要用于向系统中添加数据.
查询的基本格式:
INSERT INTO [TABLE] [db.]table [(c1, c2, c3)] VALUES (v11, v12, v13), (v21, v22, v23), ...
您可以在查询中指定要插入的列的列表,如:[(c1, c2, c3)]
。您还可以使用列匹配器的表达式,例如*
和/或修饰符,例如 APPLY, EXCEPT, REPLACE。
例如,考虑该表:
SHOW CREATE insert_select_testtable;
CREATE TABLE insert_select_testtable
(
`a` Int8,
`b` String,
`c` Int8
)
ENGINE = MergeTree()
ORDER BY a
INSERT INTO insert_select_testtable (*) VALUES (1, 'a', 1) ;
如果要在除了'b'列以外的所有列中插入数据,您需要传递和括号中选择的列数一样多的值:
INSERT INTO insert_select_testtable (* EXCEPT(b)) Values (2, 2);
SELECT * FROM insert_select_testtable;
┌─a─┬─b─┬─c─┐
│ 2 │ │ 2 │
└───┴───┴───┘
┌─a─┬─b─┬─c─┐
│ 1 │ a │ 1 │
└───┴───┴───┘
在这个示例中,我们看到插入的第二行的a