1
0
mirror of https://github.com/MariaDB/server.git synced 2025-11-12 10:22:39 +03:00

Merge dator5.(none):/home/pappa/clean-mysql-5.1

into  dator5.(none):/home/pappa/push_tree_w28
This commit is contained in:
mikael/pappa@dator5.(none)
2006-07-15 11:59:39 -04:00
14 changed files with 477 additions and 35 deletions

View File

@@ -1082,4 +1082,49 @@ a
2
1
drop table t1;
create table t1 (a int) engine myisam
partition by range (a)
subpartition by hash (a)
(partition p0 VALUES LESS THAN (1) DATA DIRECTORY = 'hello/master-data/tmpdata' INDEX DIRECTORY = 'hello/master-data/tmpinx'
(SUBPARTITION subpart00, SUBPARTITION subpart01));
hello/master-data/test:
t1#P#p0#SP#subpart00.MYD
t1#P#p0#SP#subpart00.MYI
t1#P#p0#SP#subpart01.MYD
t1#P#p0#SP#subpart01.MYI
t1.frm
t1.par
hello/master-data/tmpdata:
t1#P#p0#SP#subpart00.MYD
t1#P#p0#SP#subpart01.MYD
hello/master-data/tmpinx:
t1#P#p0#SP#subpart00.MYI
t1#P#p0#SP#subpart01.MYI
ALTER TABLE t1 REORGANIZE PARTITION p0 INTO
(partition p1 VALUES LESS THAN (1) DATA DIRECTORY = 'hello/master-data/tmpdata' INDEX DIRECTORY = 'hello/master-data/tmpinx'
(SUBPARTITION subpart10, SUBPARTITION subpart11),
partition p2 VALUES LESS THAN (2) DATA DIRECTORY = 'hello/master-data/tmpdata' INDEX DIRECTORY = 'hello/master-data/tmpinx'
(SUBPARTITION subpart20, SUBPARTITION subpart21));
hello/master-data/test:
t1#P#p1#SP#subpart10.MYD
t1#P#p1#SP#subpart10.MYI
t1#P#p1#SP#subpart11.MYD
t1#P#p1#SP#subpart11.MYI
t1#P#p2#SP#subpart20.MYD
t1#P#p2#SP#subpart20.MYI
t1#P#p2#SP#subpart21.MYD
t1#P#p2#SP#subpart21.MYI
t1.frm
t1.par
hello/master-data/tmpdata:
t1#P#p1#SP#subpart10.MYD
t1#P#p1#SP#subpart11.MYD
t1#P#p2#SP#subpart20.MYD
t1#P#p2#SP#subpart21.MYD
hello/master-data/tmpinx:
t1#P#p1#SP#subpart10.MYI
t1#P#p1#SP#subpart11.MYI
t1#P#p2#SP#subpart20.MYI
t1#P#p2#SP#subpart21.MYI
drop table t1;
End of 5.1 tests

View File

@@ -107,3 +107,14 @@ select * from t1 where id = 'aaa';
id
aaa
drop table t1;
create table t1 (a int, b int, primary key (b,a))
engine = innodb
partition by hash (a);
insert into t1 values (0, 0);
insert into t1 values (1, 0);
update t1 set b = b + 1 where a = 1;
select * from t1;
a b
0 0
1 1
drop table t1;

View File

@@ -24,3 +24,15 @@ hello/master-data/test/t1#P#p0.MYD
hello/master-data/test/t1#P#p0.MYI
hello/master-data/test/t1.frm
hello/master-data/test/t1.par
drop table t1;
create table t1 (a int)
partition by list (a)
subpartition by hash (a)
(partition p11 values in (1,2),
partition p12 values in (3,4));
alter table t1 REORGANIZE partition p11, p12 INTO
(partition p1 values in (1,2,3,4));
alter table t1 REORGANIZE partition p1 INTO
(partition p11 values in (1,2),
partition p12 values in (3,4));
drop table t1;

View File

@@ -718,7 +718,11 @@ partitions 2
partition x2 values less than (100));
INSERT into t1 values (1, 1);
INSERT into t1 values (5, NULL);
INSERT into t1 values (2, 5);
INSERT into t1 values (2, 4);
INSERT into t1 values (3, 3);
INSERT into t1 values (4, 5);
INSERT into t1 values (7, 1);
INSERT into t1 values (6, 6);
INSERT into t1 values (30, 4);
INSERT into t1 values (35, 2);
INSERT into t1 values (40, NULL);
@@ -727,7 +731,55 @@ a b
5 NULL
40 NULL
1 1
7 1
35 2
3 3
2 4
30 4
2 5
4 5
6 6
select * from t1 force index (b) where b < 10 ORDER BY b;
a b
1 1
7 1
35 2
3 3
2 4
30 4
4 5
6 6
select * from t1 force index (b) where b < 10 ORDER BY b DESC;
a b
6 6
4 5
2 4
30 4
3 3
35 2
7 1
1 1
drop table t1;
create table t1 (a int not null, b int, c varchar(20), key (a,b,c))
partition by range (b)
(partition p0 values less than (5),
partition p1 values less than (10));
INSERT into t1 values (1,1,'1'),(2,2,'2'),(1,3,'3'),(2,4,'4'),(1,5,'5');
INSERT into t1 values (2,6,'6'),(1,7,'7'),(2,8,'8'),(1,9,'9');
INSERT into t1 values (1, NULL, NULL), (2, NULL, '10');
select * from t1 where a = 1 order by a desc, b desc;
a b c
1 9 9
1 7 7
1 5 5
1 3 3
1 1 1
1 NULL NULL
select * from t1 where a = 1 order by b desc;
a b c
1 9 9
1 7 7
1 5 5
1 3 3
1 1 1
1 NULL NULL
drop table t1;

View File

@@ -519,3 +519,115 @@ partition p3 values less than (1998),
partition p4 values less than (1999),
partition p5 values less than (2000));
drop table t1;
CREATE TABLE t1 (a date)
PARTITION BY RANGE (TO_DAYS(a))
(PARTITION p3xx VALUES LESS THAN (TO_DAYS('2004-01-01')),
PARTITION p401 VALUES LESS THAN (TO_DAYS('2004-02-01')),
PARTITION p402 VALUES LESS THAN (TO_DAYS('2004-03-01')),
PARTITION p403 VALUES LESS THAN (TO_DAYS('2004-04-01')),
PARTITION p404 VALUES LESS THAN (TO_DAYS('2004-05-01')),
PARTITION p405 VALUES LESS THAN (TO_DAYS('2004-06-01')),
PARTITION p406 VALUES LESS THAN (TO_DAYS('2004-07-01')),
PARTITION p407 VALUES LESS THAN (TO_DAYS('2004-08-01')),
PARTITION p408 VALUES LESS THAN (TO_DAYS('2004-09-01')),
PARTITION p409 VALUES LESS THAN (TO_DAYS('2004-10-01')),
PARTITION p410 VALUES LESS THAN (TO_DAYS('2004-11-01')),
PARTITION p411 VALUES LESS THAN (TO_DAYS('2004-12-01')),
PARTITION p412 VALUES LESS THAN (TO_DAYS('2005-01-01')),
PARTITION p501 VALUES LESS THAN (TO_DAYS('2005-02-01')),
PARTITION p502 VALUES LESS THAN (TO_DAYS('2005-03-01')),
PARTITION p503 VALUES LESS THAN (TO_DAYS('2005-04-01')),
PARTITION p504 VALUES LESS THAN (TO_DAYS('2005-05-01')),
PARTITION p505 VALUES LESS THAN (TO_DAYS('2005-06-01')),
PARTITION p506 VALUES LESS THAN (TO_DAYS('2005-07-01')),
PARTITION p507 VALUES LESS THAN (TO_DAYS('2005-08-01')),
PARTITION p508 VALUES LESS THAN (TO_DAYS('2005-09-01')),
PARTITION p509 VALUES LESS THAN (TO_DAYS('2005-10-01')),
PARTITION p510 VALUES LESS THAN (TO_DAYS('2005-11-01')),
PARTITION p511 VALUES LESS THAN (TO_DAYS('2005-12-01')),
PARTITION p512 VALUES LESS THAN (TO_DAYS('2006-01-01')),
PARTITION p601 VALUES LESS THAN (TO_DAYS('2006-02-01')),
PARTITION p602 VALUES LESS THAN (TO_DAYS('2006-03-01')),
PARTITION p603 VALUES LESS THAN (TO_DAYS('2006-04-01')),
PARTITION p604 VALUES LESS THAN (TO_DAYS('2006-05-01')),
PARTITION p605 VALUES LESS THAN (TO_DAYS('2006-06-01')),
PARTITION p606 VALUES LESS THAN (TO_DAYS('2006-07-01')),
PARTITION p607 VALUES LESS THAN (TO_DAYS('2006-08-01')));
INSERT INTO t1 VALUES ('2003-01-13'),('2003-06-20'),('2003-08-30');
INSERT INTO t1 VALUES ('2003-04-13'),('2003-07-20'),('2003-10-30');
INSERT INTO t1 VALUES ('2003-05-13'),('2003-11-20'),('2003-12-30');
INSERT INTO t1 VALUES ('2004-01-13'),('2004-01-20'),('2004-01-30');
INSERT INTO t1 VALUES ('2004-02-13'),('2004-02-20'),('2004-02-28');
INSERT INTO t1 VALUES ('2004-03-13'),('2004-03-20'),('2004-03-30');
INSERT INTO t1 VALUES ('2004-04-13'),('2004-04-20'),('2004-04-30');
INSERT INTO t1 VALUES ('2004-05-13'),('2004-05-20'),('2004-05-30');
INSERT INTO t1 VALUES ('2004-06-13'),('2004-06-20'),('2004-06-30');
INSERT INTO t1 VALUES ('2004-07-13'),('2004-07-20'),('2004-07-30');
INSERT INTO t1 VALUES ('2004-08-13'),('2004-08-20'),('2004-08-30');
INSERT INTO t1 VALUES ('2004-09-13'),('2004-09-20'),('2004-09-30');
INSERT INTO t1 VALUES ('2004-10-13'),('2004-10-20'),('2004-10-30');
INSERT INTO t1 VALUES ('2004-11-13'),('2004-11-20'),('2004-11-30');
INSERT INTO t1 VALUES ('2004-12-13'),('2004-12-20'),('2004-12-30');
INSERT INTO t1 VALUES ('2005-01-13'),('2005-01-20'),('2005-01-30');
INSERT INTO t1 VALUES ('2005-02-13'),('2005-02-20'),('2005-02-28');
INSERT INTO t1 VALUES ('2005-03-13'),('2005-03-20'),('2005-03-30');
INSERT INTO t1 VALUES ('2005-04-13'),('2005-04-20'),('2005-04-30');
INSERT INTO t1 VALUES ('2005-05-13'),('2005-05-20'),('2005-05-30');
INSERT INTO t1 VALUES ('2005-06-13'),('2005-06-20'),('2005-06-30');
INSERT INTO t1 VALUES ('2005-07-13'),('2005-07-20'),('2005-07-30');
INSERT INTO t1 VALUES ('2005-08-13'),('2005-08-20'),('2005-08-30');
INSERT INTO t1 VALUES ('2005-09-13'),('2005-09-20'),('2005-09-30');
INSERT INTO t1 VALUES ('2005-10-13'),('2005-10-20'),('2005-10-30');
INSERT INTO t1 VALUES ('2005-11-13'),('2005-11-20'),('2005-11-30');
INSERT INTO t1 VALUES ('2005-12-13'),('2005-12-20'),('2005-12-30');
INSERT INTO t1 VALUES ('2006-01-13'),('2006-01-20'),('2006-01-30');
INSERT INTO t1 VALUES ('2006-02-13'),('2006-02-20'),('2006-02-28');
INSERT INTO t1 VALUES ('2006-03-13'),('2006-03-20'),('2006-03-30');
INSERT INTO t1 VALUES ('2006-04-13'),('2006-04-20'),('2006-04-30');
INSERT INTO t1 VALUES ('2006-05-13'),('2006-05-20'),('2006-05-30');
INSERT INTO t1 VALUES ('2006-06-13'),('2006-06-20'),('2006-06-30');
INSERT INTO t1 VALUES ('2006-07-13'),('2006-07-20'),('2006-07-30');
SELECT * FROM t1
WHERE a >= '2004-07-01' AND a <= '2004-09-30';
a
2004-07-13
2004-07-20
2004-07-30
2004-08-13
2004-08-20
2004-08-30
2004-09-13
2004-09-20
2004-09-30
EXPLAIN PARTITIONS SELECT * FROM t1
WHERE a >= '2004-07-01' AND a <= '2004-09-30';
id select_type table partitions type possible_keys key key_len ref rows Extra
1 SIMPLE t1 p407,p408,p409 ALL NULL NULL NULL NULL 9 Using where
SELECT * from t1
WHERE (a >= '2004-07-01' AND a <= '2004-09-30') OR
(a >= '2005-07-01' AND a <= '2005-09-30');
a
2004-07-13
2004-07-20
2004-07-30
2004-08-13
2004-08-20
2004-08-30
2004-09-13
2004-09-20
2004-09-30
2005-07-13
2005-07-20
2005-07-30
2005-08-13
2005-08-20
2005-08-30
2005-09-13
2005-09-20
2005-09-30
EXPLAIN PARTITIONS SELECT * from t1
WHERE (a >= '2004-07-01' AND a <= '2004-09-30') OR
(a >= '2005-07-01' AND a <= '2005-09-30');
id select_type table partitions type possible_keys key key_len ref rows Extra
1 SIMPLE t1 p407,p408,p409,p507,p508,p509 ALL NULL NULL NULL NULL 18 Using where
DROP TABLE t1;

View File

@@ -1261,4 +1261,49 @@ insert into t1 values (1),(2);
select * from t1 ORDER BY a DESC;
drop table t1;
#
# Bug 20770 Partitions: DATA DIRECTORY clause change in reorganize
# doesn't remove old directory
#
--disable_query_log
--exec mkdir $MYSQLTEST_VARDIR/master-data/tmpdata || true
eval SET @data_dir = 'DATA DIRECTORY = ''$MYSQLTEST_VARDIR/master-data/tmpdata''';
let $data_directory = `select @data_dir`;
--exec mkdir $MYSQLTEST_VARDIR/master-data/tmpinx || true
eval SET @inx_dir = 'INDEX DIRECTORY = ''$MYSQLTEST_VARDIR/master-data/tmpinx''';
let $inx_directory = `select @inx_dir`;
--enable_query_log
--replace_result $MYSQLTEST_VARDIR "hello"
eval create table t1 (a int) engine myisam
partition by range (a)
subpartition by hash (a)
(partition p0 VALUES LESS THAN (1) $data_directory $inx_directory
(SUBPARTITION subpart00, SUBPARTITION subpart01));
--replace_result $MYSQLTEST_VARDIR "hello"
--exec ls $MYSQLTEST_VARDIR/master-data/test t1* || true
--replace_result $MYSQLTEST_VARDIR "hello"
--exec ls $MYSQLTEST_VARDIR/master-data/tmpdata t1* || true
--replace_result $MYSQLTEST_VARDIR "hello"
--exec ls $MYSQLTEST_VARDIR/master-data/tmpinx t1* || true
--replace_result $MYSQLTEST_VARDIR "hello"
eval ALTER TABLE t1 REORGANIZE PARTITION p0 INTO
(partition p1 VALUES LESS THAN (1) $data_directory $inx_directory
(SUBPARTITION subpart10, SUBPARTITION subpart11),
partition p2 VALUES LESS THAN (2) $data_directory $inx_directory
(SUBPARTITION subpart20, SUBPARTITION subpart21));
--replace_result $MYSQLTEST_VARDIR "hello"
--exec ls $MYSQLTEST_VARDIR/master-data/test t1* || true
--replace_result $MYSQLTEST_VARDIR "hello"
--exec ls $MYSQLTEST_VARDIR/master-data/tmpdata t1* || true
--replace_result $MYSQLTEST_VARDIR "hello"
--exec ls $MYSQLTEST_VARDIR/master-data/tmpinx t1* || true
drop table t1;
--exec rmdir $MYSQLTEST_VARDIR/master-data/tmpdata || true
--exec rmdir $MYSQLTEST_VARDIR/master-data/tmpinx || true
--echo End of 5.1 tests

View File

@@ -78,3 +78,16 @@ select * from t1 where id = 'a';
select * from t1 where id = 'aa';
select * from t1 where id = 'aaa';
drop table t1;
#
# Bug #20852 Partitions: Crash if hash innodb, composite primary key
#
create table t1 (a int, b int, primary key (b,a))
engine = innodb
partition by hash (a);
insert into t1 values (0, 0);
insert into t1 values (1, 0);
update t1 set b = b + 1 where a = 1;
select * from t1;
drop table t1;

View File

@@ -12,7 +12,21 @@ ALTER TABLE t1 COALESCE PARTITION 1;
SHOW CREATE TABLE t1;
--replace_result $MYSQLTEST_VARDIR "hello"
--exec ls $MYSQLTEST_VARDIR/master-data/test/t1*
drop table t1;
#
# Bug 20767: REORGANIZE partition crashes
#
create table t1 (a int)
partition by list (a)
subpartition by hash (a)
(partition p11 values in (1,2),
partition p12 values in (3,4));
alter table t1 REORGANIZE partition p11, p12 INTO
(partition p1 values in (1,2,3,4));
alter table t1 REORGANIZE partition p1 INTO
(partition p11 values in (1,2),
partition p12 values in (3,4));
drop table t1;

View File

@@ -818,11 +818,27 @@ partitions 2
# Insert a couple of tuples
INSERT into t1 values (1, 1);
INSERT into t1 values (5, NULL);
INSERT into t1 values (2, 5);
INSERT into t1 values (2, 4);
INSERT into t1 values (3, 3);
INSERT into t1 values (4, 5);
INSERT into t1 values (7, 1);
INSERT into t1 values (6, 6);
INSERT into t1 values (30, 4);
INSERT into t1 values (35, 2);
INSERT into t1 values (40, NULL);
select * from t1 force index (b) where b < 10 OR b IS NULL order by b;
select * from t1 force index (b) where b < 10 ORDER BY b;
select * from t1 force index (b) where b < 10 ORDER BY b DESC;
drop table t1;
create table t1 (a int not null, b int, c varchar(20), key (a,b,c))
partition by range (b)
(partition p0 values less than (5),
partition p1 values less than (10));
INSERT into t1 values (1,1,'1'),(2,2,'2'),(1,3,'3'),(2,4,'4'),(1,5,'5');
INSERT into t1 values (2,6,'6'),(1,7,'7'),(2,8,'8'),(1,9,'9');
INSERT into t1 values (1, NULL, NULL), (2, NULL, '10');
select * from t1 where a = 1 order by a desc, b desc;
select * from t1 where a = 1 order by b desc;
drop table t1;

View File

@@ -555,3 +555,90 @@ reorganize partition p5 into
drop table t1;
#
# New test cases for date based partitioning
#
CREATE TABLE t1 (a date)
PARTITION BY RANGE (TO_DAYS(a))
(PARTITION p3xx VALUES LESS THAN (TO_DAYS('2004-01-01')),
PARTITION p401 VALUES LESS THAN (TO_DAYS('2004-02-01')),
PARTITION p402 VALUES LESS THAN (TO_DAYS('2004-03-01')),
PARTITION p403 VALUES LESS THAN (TO_DAYS('2004-04-01')),
PARTITION p404 VALUES LESS THAN (TO_DAYS('2004-05-01')),
PARTITION p405 VALUES LESS THAN (TO_DAYS('2004-06-01')),
PARTITION p406 VALUES LESS THAN (TO_DAYS('2004-07-01')),
PARTITION p407 VALUES LESS THAN (TO_DAYS('2004-08-01')),
PARTITION p408 VALUES LESS THAN (TO_DAYS('2004-09-01')),
PARTITION p409 VALUES LESS THAN (TO_DAYS('2004-10-01')),
PARTITION p410 VALUES LESS THAN (TO_DAYS('2004-11-01')),
PARTITION p411 VALUES LESS THAN (TO_DAYS('2004-12-01')),
PARTITION p412 VALUES LESS THAN (TO_DAYS('2005-01-01')),
PARTITION p501 VALUES LESS THAN (TO_DAYS('2005-02-01')),
PARTITION p502 VALUES LESS THAN (TO_DAYS('2005-03-01')),
PARTITION p503 VALUES LESS THAN (TO_DAYS('2005-04-01')),
PARTITION p504 VALUES LESS THAN (TO_DAYS('2005-05-01')),
PARTITION p505 VALUES LESS THAN (TO_DAYS('2005-06-01')),
PARTITION p506 VALUES LESS THAN (TO_DAYS('2005-07-01')),
PARTITION p507 VALUES LESS THAN (TO_DAYS('2005-08-01')),
PARTITION p508 VALUES LESS THAN (TO_DAYS('2005-09-01')),
PARTITION p509 VALUES LESS THAN (TO_DAYS('2005-10-01')),
PARTITION p510 VALUES LESS THAN (TO_DAYS('2005-11-01')),
PARTITION p511 VALUES LESS THAN (TO_DAYS('2005-12-01')),
PARTITION p512 VALUES LESS THAN (TO_DAYS('2006-01-01')),
PARTITION p601 VALUES LESS THAN (TO_DAYS('2006-02-01')),
PARTITION p602 VALUES LESS THAN (TO_DAYS('2006-03-01')),
PARTITION p603 VALUES LESS THAN (TO_DAYS('2006-04-01')),
PARTITION p604 VALUES LESS THAN (TO_DAYS('2006-05-01')),
PARTITION p605 VALUES LESS THAN (TO_DAYS('2006-06-01')),
PARTITION p606 VALUES LESS THAN (TO_DAYS('2006-07-01')),
PARTITION p607 VALUES LESS THAN (TO_DAYS('2006-08-01')));
INSERT INTO t1 VALUES ('2003-01-13'),('2003-06-20'),('2003-08-30');
INSERT INTO t1 VALUES ('2003-04-13'),('2003-07-20'),('2003-10-30');
INSERT INTO t1 VALUES ('2003-05-13'),('2003-11-20'),('2003-12-30');
INSERT INTO t1 VALUES ('2004-01-13'),('2004-01-20'),('2004-01-30');
INSERT INTO t1 VALUES ('2004-02-13'),('2004-02-20'),('2004-02-28');
INSERT INTO t1 VALUES ('2004-03-13'),('2004-03-20'),('2004-03-30');
INSERT INTO t1 VALUES ('2004-04-13'),('2004-04-20'),('2004-04-30');
INSERT INTO t1 VALUES ('2004-05-13'),('2004-05-20'),('2004-05-30');
INSERT INTO t1 VALUES ('2004-06-13'),('2004-06-20'),('2004-06-30');
INSERT INTO t1 VALUES ('2004-07-13'),('2004-07-20'),('2004-07-30');
INSERT INTO t1 VALUES ('2004-08-13'),('2004-08-20'),('2004-08-30');
INSERT INTO t1 VALUES ('2004-09-13'),('2004-09-20'),('2004-09-30');
INSERT INTO t1 VALUES ('2004-10-13'),('2004-10-20'),('2004-10-30');
INSERT INTO t1 VALUES ('2004-11-13'),('2004-11-20'),('2004-11-30');
INSERT INTO t1 VALUES ('2004-12-13'),('2004-12-20'),('2004-12-30');
INSERT INTO t1 VALUES ('2005-01-13'),('2005-01-20'),('2005-01-30');
INSERT INTO t1 VALUES ('2005-02-13'),('2005-02-20'),('2005-02-28');
INSERT INTO t1 VALUES ('2005-03-13'),('2005-03-20'),('2005-03-30');
INSERT INTO t1 VALUES ('2005-04-13'),('2005-04-20'),('2005-04-30');
INSERT INTO t1 VALUES ('2005-05-13'),('2005-05-20'),('2005-05-30');
INSERT INTO t1 VALUES ('2005-06-13'),('2005-06-20'),('2005-06-30');
INSERT INTO t1 VALUES ('2005-07-13'),('2005-07-20'),('2005-07-30');
INSERT INTO t1 VALUES ('2005-08-13'),('2005-08-20'),('2005-08-30');
INSERT INTO t1 VALUES ('2005-09-13'),('2005-09-20'),('2005-09-30');
INSERT INTO t1 VALUES ('2005-10-13'),('2005-10-20'),('2005-10-30');
INSERT INTO t1 VALUES ('2005-11-13'),('2005-11-20'),('2005-11-30');
INSERT INTO t1 VALUES ('2005-12-13'),('2005-12-20'),('2005-12-30');
INSERT INTO t1 VALUES ('2006-01-13'),('2006-01-20'),('2006-01-30');
INSERT INTO t1 VALUES ('2006-02-13'),('2006-02-20'),('2006-02-28');
INSERT INTO t1 VALUES ('2006-03-13'),('2006-03-20'),('2006-03-30');
INSERT INTO t1 VALUES ('2006-04-13'),('2006-04-20'),('2006-04-30');
INSERT INTO t1 VALUES ('2006-05-13'),('2006-05-20'),('2006-05-30');
INSERT INTO t1 VALUES ('2006-06-13'),('2006-06-20'),('2006-06-30');
INSERT INTO t1 VALUES ('2006-07-13'),('2006-07-20'),('2006-07-30');
SELECT * FROM t1
WHERE a >= '2004-07-01' AND a <= '2004-09-30';
EXPLAIN PARTITIONS SELECT * FROM t1
WHERE a >= '2004-07-01' AND a <= '2004-09-30';
SELECT * from t1
WHERE (a >= '2004-07-01' AND a <= '2004-09-30') OR
(a >= '2005-07-01' AND a <= '2005-09-30');
EXPLAIN PARTITIONS SELECT * from t1
WHERE (a >= '2004-07-01' AND a <= '2004-09-30') OR
(a >= '2005-07-01' AND a <= '2005-09-30');
DROP TABLE t1;