summaryrefslogtreecommitdiff
path: root/mysql-test/r/partition_column.result
diff options
context:
space:
mode:
authorMikael Ronstrom <mikael@mysql.com>2009-09-15 17:27:10 +0200
committerMikael Ronstrom <mikael@mysql.com>2009-09-15 17:27:10 +0200
commit3b29941f5df7ba95685da159344bc2632c12f1ac (patch)
treee64fb8839e011daf4870ec10e16bc1fbe9d05b3a /mysql-test/r/partition_column.result
parent6942c25e733967e4d3da8aaad3b2e9a2832dc33e (diff)
downloadmariadb-git-3b29941f5df7ba95685da159344bc2632c12f1ac.tar.gz
Forgot to add result files for WL#3352 new test cases
Diffstat (limited to 'mysql-test/r/partition_column.result')
-rw-r--r--mysql-test/r/partition_column.result213
1 files changed, 213 insertions, 0 deletions
diff --git a/mysql-test/r/partition_column.result b/mysql-test/r/partition_column.result
new file mode 100644
index 00000000000..5c6464b271d
--- /dev/null
+++ b/mysql-test/r/partition_column.result
@@ -0,0 +1,213 @@
+drop table if exists t1;
+create table t1 (a int, b char(10), c varchar(25), d datetime)
+partition by range column_list(a,b,c,d)
+subpartition by hash (to_seconds(d))
+subpartitions 4
+( partition p0 values less than (column_list(1, NULL, MAXVALUE, NULL)),
+partition p1 values less than (column_list(1, 'a', MAXVALUE, TO_DAYS('1999-01-01'))),
+partition p2 values less than (column_list(1, 'a', MAXVALUE, MAXVALUE)),
+partition p3 values less than (column_list(1, MAXVALUE, MAXVALUE, MAXVALUE)));
+drop table t1;
+create table t1 (a int, b char(10), c varchar(5), d int)
+partition by range column_list(a,b,c)
+subpartition by key (c,d)
+subpartitions 3
+( partition p0 values less than (column_list(1,'abc','abc')),
+partition p1 values less than (column_list(2,'abc','abc')),
+partition p2 values less than (column_list(3,'abc','abc')),
+partition p3 values less than (column_list(4,'abc','abc')));
+insert into t1 values (1,'a','b',1),(2,'a','b',2),(3,'a','b',3);
+insert into t1 values (1,'b','c',1),(2,'b','c',2),(3,'b','c',3);
+insert into t1 values (1,'c','d',1),(2,'c','d',2),(3,'c','d',3);
+insert into t1 values (1,'d','e',1),(2,'d','e',2),(3,'d','e',3);
+select * from t1 where (a = 1 AND b < 'd' AND (c = 'b' OR (c = 'c' AND d = 1)) OR
+(a = 1 AND b >= 'a' AND (c = 'c' OR (c = 'd' AND d = 2))));
+a b c d
+1 a b 1
+1 b c 1
+drop table t1;
+create table t1 (a int, b varchar(2), c int)
+partition by range column_list (a, b, c)
+(partition p0 values less than (column_list(1, 'A', 1)),
+partition p1 values less than (column_list(1, 'B', 1)));
+insert into t1 values (1, 'A', 1);
+explain partitions select * from t1 where a = 1 AND b <= 'A' and c = 1;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0,p1 system NULL NULL NULL NULL 1
+select * from t1 where a = 1 AND b <= 'A' and c = 1;
+a b c
+1 A 1
+drop table t1;
+create table t1 (a char, b char, c char)
+partition by list column_list(a)
+( partition p0 values in (column_list('a')));
+insert into t1 (a) values ('a');
+select * from t1 where a = 'a';
+a b c
+a NULL NULL
+drop table t1;
+create table t1 (d timestamp)
+partition by range column_list(d)
+( partition p0 values less than (column_list('2000-01-01')),
+partition p1 values less than (column_list('2040-01-01')));
+ERROR HY000: Partition column values of incorrect type
+create table t1 (a int, b int)
+partition by range column_list(a,b)
+(partition p0 values less than (column_list(null, 10)));
+drop table t1;
+create table t1 (d date)
+partition by range column_list(d)
+( partition p0 values less than (column_list('2000-01-01')),
+partition p1 values less than (column_list('2009-01-01')));
+drop table t1;
+create table t1 (d date)
+partition by range column_list(d)
+( partition p0 values less than (column_list('1999-01-01')),
+partition p1 values less than (column_list('2000-01-01')));
+drop table t1;
+create table t1 (d date)
+partition by range column_list(d)
+( partition p0 values less than (column_list('2000-01-01')),
+partition p1 values less than (column_list('3000-01-01')));
+drop table t1;
+create table t1 (a int, b int)
+partition by range column_list(a,b)
+(partition p2 values less than (column_list(99,99)),
+partition p1 values less than (column_list(99,999)));
+insert into t1 values (99,998);
+select * from t1 where b = 998;
+a b
+99 998
+drop table t1;
+create table t1 as select to_seconds(null) as to_seconds;
+select data_type from information_schema.columns
+where column_name='to_seconds';
+data_type
+int
+drop table t1;
+create table t1 (a int, b int)
+partition by list column_list(a,b)
+(partition p0 values in (column_list(maxvalue,maxvalue)));
+ERROR 42000: Cannot use MAXVALUE as value in List partitioning near 'maxvalue,maxvalue)))' at line 3
+create table t1 (a int, b int)
+partition by range column_list(a,b)
+(partition p0 values less than (column_list(maxvalue,maxvalue)));
+drop table t1;
+create table t1 (a int)
+partition by list column_list(a)
+(partition p0 values in (column_list(0)));
+select partition_method from information_schema.partitions where table_name='t1';
+partition_method
+LIST COLUMN_LIST
+drop table t1;
+create table t1 (a char(6))
+partition by range column_list(a)
+(partition p0 values less than (column_list('H23456')),
+partition p1 values less than (column_list('M23456')));
+insert into t1 values ('F23456');
+select * from t1;
+a
+F23456
+drop table t1;
+create table t1 (a char(6))
+partition by range column_list(a)
+(partition p0 values less than (column_list(H23456)),
+partition p1 values less than (column_list(M23456)));
+ERROR 42S22: Unknown column 'H23456' in 'field list'
+create table t1 (a char(6))
+partition by range column_list(a)
+(partition p0 values less than (column_list(23456)),
+partition p1 values less than (column_list(23456)));
+ERROR HY000: VALUES LESS THAN value must be strictly increasing for each partition
+create table t1 (a int, b int)
+partition by range column_list(a,b)
+(partition p0 values less than (10));
+ERROR 42000: Inconsistency in usage of column lists for partitioning near '))' at line 3
+create table t1 (a int, b int)
+partition by range column_list(a,b)
+(partition p0 values less than (column_list(1,1,1));
+ERROR HY000: Inconsistency in usage of column lists for partitioning
+create table t1 (a int, b int)
+partition by range column_list(a,b)
+(partition p0 values less than (column_list(1, NULL)),
+partition p1 values less than (column_list(2, maxvalue)),
+partition p2 values less than (column_list(3, 3)),
+partition p3 values less than (column_list(10, NULL)));
+insert into t1 values (10,0);
+ERROR HY000: Table has no partition for value from column_list
+insert into t1 values (0,1),(1,1),(2,1),(3,1),(3,4),(4,9),(9,1);
+select * from t1;
+a b
+0 1
+1 1
+2 1
+3 1
+3 4
+4 9
+9 1
+alter table t1
+partition by range column_list(b,a)
+(partition p0 values less than (column_list(1,2)),
+partition p1 values less than (column_list(3,3)),
+partition p2 values less than (column_list(9,5)));
+explain partitions select * from t1 where b < 2;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0,p1 ALL NULL NULL NULL NULL 7 Using where
+select * from t1 where b < 2;
+a b
+0 1
+1 1
+2 1
+3 1
+9 1
+explain partitions select * from t1 where b < 4;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0,p1,p2 ALL NULL NULL NULL NULL 7 Using where
+select * from t1 where b < 4;
+a b
+0 1
+1 1
+2 1
+3 1
+9 1
+alter table t1 reorganize partition p1 into
+(partition p11 values less than (column_list(2,2)),
+partition p12 values less than (column_list(3,3)));
+alter table t1 reorganize partition p0 into
+(partition p01 values less than (column_list(0,3)),
+partition p02 values less than (column_list(1,1)));
+ERROR HY000: Reorganize of range partitions cannot change total ranges except for last partition where it can extend the range
+alter table t1 reorganize partition p2 into
+(partition p2 values less than(column_list(9,6,1)));
+ERROR HY000: Inconsistency in usage of column lists for partitioning
+alter table t1 reorganize partition p2 into
+(partition p2 values less than (10));
+ERROR HY000: Inconsistency in usage of column lists for partitioning
+alter table t1 reorganize partition p2 into
+(partition p21 values less than (column_list(4,7)),
+partition p22 values less than (column_list(9,5)));
+explain partitions select * from t1 where b < 4;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0,p11,p12,p21 ALL NULL NULL NULL NULL 7 Using where
+select * from t1 where b < 4;
+a b
+0 1
+1 1
+2 1
+3 1
+9 1
+drop table t1;
+create table t1 (a int, b int)
+partition by list column_list(a,b)
+subpartition by hash (b)
+subpartitions 2
+(partition p0 values in (column_list(0,0), column_list(1,1)),
+partition p1 values in (column_list(1000,1000)));
+insert into t1 values (1000,1000);
+drop table t1;
+create table t1 (a char, b char, c char)
+partition by range column_list(a,b,c)
+( partition p0 values less than (column_list('a','b','c')));
+alter table t1 add partition
+(partition p1 values less than (column_list('b','c','d')));
+drop table t1;