MySQL可以使用PARTITION BY子句進行表分區。以下是創建表分區的步驟:
CREATE TABLE mytable (
id INT,
name VARCHAR(50),
age INT
);
ALTER TABLE mytable
PARTITION BY RANGE(id) (
PARTITION p0 VALUES LESS THAN (10),
PARTITION p1 VALUES LESS THAN (20),
PARTITION p2 VALUES LESS THAN (MAXVALUE)
);
上述示例中,表被分為三個分區,分區p0包含所有id小于10的行,p1包含所有id小于20的行,p2包含剩余的行。
ALTER TABLE mytable
ADD PARTITION (
PARTITION p3 VALUES LESS THAN (30)
);
上述示例中,添加了一個新的分區p3,該分區包含所有id小于30的行。
注意:在創建分區之前,必須確保表上沒有主鍵或唯一索引。分區列也必須是整數或日期/時間類型的列。