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:
@@ -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
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user