mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Manual merge from mysql-trunk-merge.
Conflicts: - sql/sql_partition.cc
This commit is contained in:
@ -8,6 +8,166 @@
|
||||
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
||||
--enable_warnings
|
||||
|
||||
--echo #
|
||||
--echo # Bug#49742: Partition Pruning not working correctly for RANGE
|
||||
--echo #
|
||||
CREATE TABLE t1 (a INT PRIMARY KEY)
|
||||
PARTITION BY RANGE (a) (
|
||||
PARTITION p0 VALUES LESS THAN (1),
|
||||
PARTITION p1 VALUES LESS THAN (2),
|
||||
PARTITION p2 VALUES LESS THAN (3),
|
||||
PARTITION p3 VALUES LESS THAN (4),
|
||||
PARTITION p4 VALUES LESS THAN (5),
|
||||
PARTITION p5 VALUES LESS THAN (6),
|
||||
PARTITION max VALUES LESS THAN MAXVALUE);
|
||||
|
||||
INSERT INTO t1 VALUES (-1),(0),(1),(2),(3),(4),(5),(6),(7),(8);
|
||||
|
||||
SELECT * FROM t1 WHERE a < 1;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < 1;
|
||||
SELECT * FROM t1 WHERE a < 2;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < 2;
|
||||
SELECT * FROM t1 WHERE a < 3;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < 3;
|
||||
SELECT * FROM t1 WHERE a < 4;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < 4;
|
||||
SELECT * FROM t1 WHERE a < 5;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < 5;
|
||||
SELECT * FROM t1 WHERE a < 6;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < 6;
|
||||
SELECT * FROM t1 WHERE a < 7;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < 7;
|
||||
SELECT * FROM t1 WHERE a <= 1;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= 1;
|
||||
SELECT * FROM t1 WHERE a <= 2;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= 2;
|
||||
SELECT * FROM t1 WHERE a <= 3;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= 3;
|
||||
SELECT * FROM t1 WHERE a <= 4;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= 4;
|
||||
SELECT * FROM t1 WHERE a <= 5;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= 5;
|
||||
SELECT * FROM t1 WHERE a <= 6;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= 6;
|
||||
SELECT * FROM t1 WHERE a <= 7;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= 7;
|
||||
SELECT * FROM t1 WHERE a = 1;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = 1;
|
||||
SELECT * FROM t1 WHERE a = 2;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = 2;
|
||||
SELECT * FROM t1 WHERE a = 3;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = 3;
|
||||
SELECT * FROM t1 WHERE a = 4;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = 4;
|
||||
SELECT * FROM t1 WHERE a = 5;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = 5;
|
||||
SELECT * FROM t1 WHERE a = 6;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = 6;
|
||||
SELECT * FROM t1 WHERE a = 7;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = 7;
|
||||
SELECT * FROM t1 WHERE a >= 1;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= 1;
|
||||
SELECT * FROM t1 WHERE a >= 2;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= 2;
|
||||
SELECT * FROM t1 WHERE a >= 3;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= 3;
|
||||
SELECT * FROM t1 WHERE a >= 4;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= 4;
|
||||
SELECT * FROM t1 WHERE a >= 5;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= 5;
|
||||
SELECT * FROM t1 WHERE a >= 6;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= 6;
|
||||
SELECT * FROM t1 WHERE a >= 7;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= 7;
|
||||
SELECT * FROM t1 WHERE a > 1;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > 1;
|
||||
SELECT * FROM t1 WHERE a > 2;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > 2;
|
||||
SELECT * FROM t1 WHERE a > 3;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > 3;
|
||||
SELECT * FROM t1 WHERE a > 4;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > 4;
|
||||
SELECT * FROM t1 WHERE a > 5;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > 5;
|
||||
SELECT * FROM t1 WHERE a > 6;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > 6;
|
||||
SELECT * FROM t1 WHERE a > 7;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > 7;
|
||||
DROP TABLE t1;
|
||||
|
||||
CREATE TABLE t1 (a INT PRIMARY KEY)
|
||||
PARTITION BY RANGE (a) (
|
||||
PARTITION p0 VALUES LESS THAN (1),
|
||||
PARTITION p1 VALUES LESS THAN (2),
|
||||
PARTITION p2 VALUES LESS THAN (3),
|
||||
PARTITION p3 VALUES LESS THAN (4),
|
||||
PARTITION p4 VALUES LESS THAN (5),
|
||||
PARTITION max VALUES LESS THAN MAXVALUE);
|
||||
|
||||
INSERT INTO t1 VALUES (-1),(0),(1),(2),(3),(4),(5),(6),(7);
|
||||
|
||||
SELECT * FROM t1 WHERE a < 1;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < 1;
|
||||
SELECT * FROM t1 WHERE a < 2;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < 2;
|
||||
SELECT * FROM t1 WHERE a < 3;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < 3;
|
||||
SELECT * FROM t1 WHERE a < 4;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < 4;
|
||||
SELECT * FROM t1 WHERE a < 5;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < 5;
|
||||
SELECT * FROM t1 WHERE a < 6;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < 6;
|
||||
SELECT * FROM t1 WHERE a <= 1;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= 1;
|
||||
SELECT * FROM t1 WHERE a <= 2;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= 2;
|
||||
SELECT * FROM t1 WHERE a <= 3;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= 3;
|
||||
SELECT * FROM t1 WHERE a <= 4;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= 4;
|
||||
SELECT * FROM t1 WHERE a <= 5;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= 5;
|
||||
SELECT * FROM t1 WHERE a <= 6;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= 6;
|
||||
SELECT * FROM t1 WHERE a = 1;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = 1;
|
||||
SELECT * FROM t1 WHERE a = 2;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = 2;
|
||||
SELECT * FROM t1 WHERE a = 3;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = 3;
|
||||
SELECT * FROM t1 WHERE a = 4;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = 4;
|
||||
SELECT * FROM t1 WHERE a = 5;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = 5;
|
||||
SELECT * FROM t1 WHERE a = 6;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = 6;
|
||||
SELECT * FROM t1 WHERE a >= 1;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= 1;
|
||||
SELECT * FROM t1 WHERE a >= 2;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= 2;
|
||||
SELECT * FROM t1 WHERE a >= 3;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= 3;
|
||||
SELECT * FROM t1 WHERE a >= 4;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= 4;
|
||||
SELECT * FROM t1 WHERE a >= 5;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= 5;
|
||||
SELECT * FROM t1 WHERE a >= 6;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= 6;
|
||||
SELECT * FROM t1 WHERE a > 1;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > 1;
|
||||
SELECT * FROM t1 WHERE a > 2;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > 2;
|
||||
SELECT * FROM t1 WHERE a > 3;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > 3;
|
||||
SELECT * FROM t1 WHERE a > 4;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > 4;
|
||||
SELECT * FROM t1 WHERE a > 5;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > 5;
|
||||
SELECT * FROM t1 WHERE a > 6;
|
||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > 6;
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Bug#20577: Partitions: use of to_days() function leads to selection failures
|
||||
#
|
||||
|
Reference in New Issue
Block a user