Insert水平分区¶
INSERT分区表和普通表一样,也可以直接插入数据到子分区表中。如果插入的数据超出子分区表的边界,将会报错。
示例1:INSERT范围分区表¶
-- 清理环境
DROP TABLE tab;
-- 创建分区表
CREATE TABLE tab
(
c1 INT,
c2 INT
)
PARTITION BY RANGE (c1)
(
PARTITION p1 VALUES LESS THAN (10),
PARTITION p2 VALUES LESS THAN (20),
PARTITION p3 VALUES LESS THAN (30)
);
--和普通表一样插入数据
INSERT INTO tab VALUES(2,3);
--直接插入数据到子分区表
INSERT INTO tab PARTITION(p2) VALUES(14, 20);
--直接插入数据到子分区表,但数据不在所插入的分区边界内,报错
INSERT INTO tab PARTITION(p2) VALUES(22, 30);
ERROR, 新增行不属于用户指定子分区表
--删除表
DROP TABLE tab;
示例2:INSERT哈希分区表¶
-- 清理环境
DROP TABLE tab;
--创建哈希分区表
CREATE TABLE tab
(
c1 INT,
c2 INT
)
PARTITION BY HASH(c1)
(
PARTITION p1,
PARTITION p2
);
--插入值到分区表
INSERT INTO tab VALUES(1,2);
--删除表
DROP TABLE tab;