mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-10765: Wrong result - query does not retrieve values from default partition on a table partitioned by list columns
Partial matches should be treat as not exact one.
This commit is contained in:
@ -1149,3 +1149,58 @@ t1 CREATE TABLE `t1` (
|
||||
PARTITION p2 VALUES IN ((1,4),(2,5),(3,6)) ENGINE = MyISAM,
|
||||
PARTITION p1 VALUES IN ((1,1),(0,0)) ENGINE = MyISAM) */
|
||||
drop table t1;
|
||||
#
|
||||
# MDEV-10765: Wrong result - query does not retrieve values from
|
||||
# default partition on a table partitioned by list columns
|
||||
#
|
||||
create table t1 (i int, j int) partition by list columns(i,j) (partition p1 values in ((10,10)), partition p2 default);
|
||||
insert into t1 values (10,1);
|
||||
select * from t1 where i = 10;
|
||||
i j
|
||||
10 1
|
||||
explain partitions
|
||||
select * from t1 where i = 10;
|
||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 p1,p2 system NULL NULL NULL NULL 1
|
||||
select * from t1 where i = 10 and j=1;
|
||||
i j
|
||||
10 1
|
||||
explain partitions
|
||||
select * from t1 where i = 10 and j=1;
|
||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 p2 system NULL NULL NULL NULL 1
|
||||
insert into t1 values (10,10);
|
||||
select * from t1 where i = 10 and j=10;
|
||||
i j
|
||||
10 10
|
||||
explain partitions
|
||||
select * from t1 where i = 10 and j=10;
|
||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 p1 system NULL NULL NULL NULL 1
|
||||
drop table t1;
|
||||
create table t1
|
||||
(
|
||||
a int not null,
|
||||
b int not null,
|
||||
c int
|
||||
)
|
||||
partition by list columns(a,b)
|
||||
(
|
||||
partition p1 values in ((10,10)),
|
||||
partition p2 values in ((10,20)),
|
||||
partition p3 values in ((10,30)),
|
||||
partition p4 values in ((10,40)),
|
||||
partition p5 values in ((10,50))
|
||||
);
|
||||
insert into t1 values
|
||||
(10,10,1234),
|
||||
(10,20,1234),
|
||||
(10,30,1234),
|
||||
(10,40,1234),
|
||||
(10,50,1234);
|
||||
explain partitions
|
||||
select * from t1
|
||||
where a>=10 and (a <=10 and b <=30);
|
||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 p1,p2,p3 ALL NULL NULL NULL NULL 3 Using where
|
||||
drop table t1;
|
||||
|
Reference in New Issue
Block a user