drop table if exists t1; CREATE TABLE t1 ( a int not null, b int not null, c int not null) partition by list(a) partitions 2 (partition x123 values in (1,5,6), partition x234 values in (4,7,8)); INSERT into t1 VALUES (1,1,1); INSERT into t1 VALUES (2,1,1); ERROR HY000: Table has no partition for value 2 INSERT into t1 VALUES (3,1,1); ERROR HY000: Table has no partition for value 3 INSERT into t1 VALUES (4,1,1); INSERT into t1 VALUES (5,1,1); INSERT into t1 VALUES (6,1,1); INSERT into t1 VALUES (7,1,1); INSERT into t1 VALUES (8,1,1); INSERT into t1 VALUES (9,1,1); ERROR HY000: Table has no partition for value 9 INSERT into t1 VALUES (1,2,1); INSERT into t1 VALUES (1,3,1); INSERT into t1 VALUES (1,4,1); INSERT into t1 VALUES (7,2,1); INSERT into t1 VALUES (7,3,1); INSERT into t1 VALUES (7,4,1); SELECT * from t1; a b c 1 1 1 5 1 1 6 1 1 1 2 1 1 3 1 1 4 1 4 1 1 7 1 1 8 1 1 7 2 1 7 3 1 7 4 1 SELECT * from t1 WHERE a=1; a b c 1 1 1 1 2 1 1 3 1 1 4 1 SELECT * from t1 WHERE a=7; a b c 7 1 1 7 2 1 7 3 1 7 4 1 SELECT * from t1 WHERE b=2; a b c 1 2 1 7 2 1 UPDATE t1 SET a=8 WHERE a=7 AND b=3; SELECT * from t1; a b c 1 1 1 5 1 1 6 1 1 1 2 1 1 3 1 1 4 1 4 1 1 7 1 1 8 1 1 7 2 1 8 3 1 7 4 1 UPDATE t1 SET a=8 WHERE a=5 AND b=1; SELECT * from t1; a b c 1 1 1 6 1 1 1 2 1 1 3 1 1 4 1 4 1 1 7 1 1 8 1 1 7 2 1 8 3 1 7 4 1 8 1 1 DELETE from t1 WHERE a=8; SELECT * from t1; a b c 1 1 1 6 1 1 1 2 1 1 3 1 1 4 1 4 1 1 7 1 1 7 2 1 7 4 1 DELETE from t1 WHERE a=2; SELECT * from t1; a b c 1 1 1 6 1 1 1 2 1 1 3 1 1 4 1 4 1 1 7 1 1 7 2 1 7 4 1 DELETE from t1 WHERE a=5 OR a=6; SELECT * from t1; a b c 1 1 1 1 2 1 1 3 1 1 4 1 4 1 1 7 1 1 7 2 1 7 4 1 ALTER TABLE t1 partition by list(a) partitions 2 (partition x123 values in (1,5,6), partition x234 values in (4,7,8)); SELECT * from t1; a b c 1 1 1 1 2 1 1 3 1 1 4 1 4 1 1 7 1 1 7 2 1 7 4 1 INSERT into t1 VALUES (6,2,1); INSERT into t1 VALUES (2,2,1); ERROR HY000: Table has no partition for value 2 drop table t1; CREATE TABLE t1 ( a int not null, b int not null, c int not null, primary key (a,b)) partition by list (a) subpartition by hash (a+b) ( partition x1 values in (1,2,3) ( subpartition x11 nodegroup 0, subpartition x12 nodegroup 1), partition x2 values in (4,5,6) ( subpartition x21 nodegroup 0, subpartition x22 nodegroup 1) ); INSERT into t1 VALUES (1,1,1); INSERT into t1 VALUES (4,1,1); INSERT into t1 VALUES (7,1,1); ERROR HY000: Table has no partition for value 7 UPDATE t1 SET a=5 WHERE a=1; SELECT * from t1; a b c 5 1 1 4 1 1 UPDATE t1 SET a=6 WHERE a=4; SELECT * from t1; a b c 5 1 1 6 1 1 DELETE from t1 WHERE a=6; SELECT * from t1; a b c 5 1 1 drop table t1; CREATE TABLE t1 ( a int not null, b int not null, c int not null, primary key(a,b)) partition by list (a) (partition x1 values in (1,2,9,4) tablespace ts1); drop table t1;