mirror of
https://github.com/MariaDB/server.git
synced 2025-11-21 06:21:35 +03:00
of the 5.3 code line after a merge with 5.2 on 2010-10-28 in order not to allow the cost to access a joined table to be equal to 0 ever. Expanded data sets for many test cases to get the same execution plans as before.
61 lines
1.1 KiB
Plaintext
61 lines
1.1 KiB
Plaintext
drop table if exists t1;
|
|
CREATE TABLE t1 (
|
|
a char(5) NOT NULL,
|
|
b char(4) NOT NULL,
|
|
KEY (a),
|
|
KEY (b)
|
|
);
|
|
INSERT INTO t1 VALUES ('A','B'),('b','A'),('C','c'),('D','E'),('a','a');
|
|
INSERT INTO t1 VALUES
|
|
('AA','BB'),('bb','AA'),('CC','cc'),('DD','EE'),('aa','aa');
|
|
INSERT INTO t1 VALUES
|
|
('AAA','BBB'),('bbb','AAA'),('CCC','ccc'),('DDD','EEE'),('aaa','aaa');
|
|
select * from t1,t1 as t2
|
|
where length(t1.A)=1 and length(t2.B)=1 ;
|
|
a b a b
|
|
A B A B
|
|
b A A B
|
|
C c A B
|
|
D E A B
|
|
a a A B
|
|
A B b A
|
|
b A b A
|
|
C c b A
|
|
D E b A
|
|
a a b A
|
|
A B C c
|
|
b A C c
|
|
C c C c
|
|
D E C c
|
|
a a C c
|
|
A B D E
|
|
b A D E
|
|
C c D E
|
|
D E D E
|
|
a a D E
|
|
A B a a
|
|
b A a a
|
|
C c a a
|
|
D E a a
|
|
a a a a
|
|
explain select t1.*,t2.* from t1,t1 as t2
|
|
where t1.A=t2.B and length(t1.A)=1 and length(t2.B)=1;
|
|
id select_type table type possible_keys key key_len ref rows Extra
|
|
1 SIMPLE t1 ALL a NULL NULL NULL 15 Using where
|
|
1 SIMPLE t2 ref b b 4 test.t1.a 1 Using where
|
|
select t1.*,t2.* from t1,t1 as t2
|
|
where t1.A=t2.B and length(t1.A)=1 and length(t2.B)=1
|
|
order by binary t1.a,t2.a;
|
|
a b a b
|
|
A B a a
|
|
A B b A
|
|
C c C c
|
|
a a a a
|
|
a a b A
|
|
b A A B
|
|
select * from t1 where a='a';
|
|
a b
|
|
A B
|
|
a a
|
|
drop table t1;
|