1.新建普通表
CREATE TABLE data(id int(30) ,time int(12), sarlay decimal(12,2));
2.插入數據
INSERT INTO data VALUES (1,201911,10000), (2,201912, 12000), (3,201910, 11000), (4,202001,13000), (5,202001,15000), (6,202004,16000), (7,202004, 17000), (8,202004, 180000);
3.建立LIST分區表
CREATE TABLE data_list(id int(30) ,time int(12), sarlay decimal(12,2));
PARTITION BY LIST(time ) (
PARTITION p0 VALUES IN (201910),
PARTITION p1 VALUES IN (201911),
PARTITION p2 VALUES IN (201912),
PARTITION p3 VALUES IN (202001),
PARTITION p4 VALUES IN (202004)
);
4.插入數據至分區表
INSERT INTO data_list SELECT * FROM data;
5.查看分區表情況
SELECT table_name,partition_name,partition_description,table_rows FROM
information_schema.`PARTITIONS` WHERE table_name = 'data_list ';
6.刪除分區
alter table data_list drop partition p4;
alter table data_list drop partition p2,p3;
-- 刪除分區會直接刪除數據,請謹慎。
7.新增分區
alter table data_list ADD PARTITION (PARTITION p4 VALUES IN (202004));
alter table data_list ADD PARTITION (PARTITION p5 VALUES IN (202005,202006));
8.拆分分區
ALTER TABLE data_list REORGANIZE PARTITION p5 INTO (PARTITION p5 VALUES IN (202005),PARTITION p6 VALUES IN (202006));
9.合併分區
ALTER TABLE data_list REORGANIZE PARTITION p5,p6 INTO (PARTITION p5_6 VALUES IN (202005,202006));
mysql分區表LIST
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.