mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Fix for the bug #2976: NATURAL JOIN produces duplicate columns.
Improvement natural join code in the setup_conds().
This commit is contained in:
@ -277,11 +277,11 @@ CREATE TABLE t2 (ID INTEGER NOT NULL PRIMARY KEY, Value2 VARCHAR(255));
|
||||
INSERT INTO t1 VALUES (1, 'A');
|
||||
INSERT INTO t2 VALUES (1, 'B');
|
||||
SELECT * FROM t1 NATURAL JOIN t2 WHERE 1 AND (Value1 = 'A' AND Value2 <> 'B');
|
||||
ID Value1 ID Value2
|
||||
ID Value1 Value2
|
||||
SELECT * FROM t1 NATURAL JOIN t2 WHERE 1 AND Value1 = 'A' AND Value2 <> 'B';
|
||||
ID Value1 ID Value2
|
||||
ID Value1 Value2
|
||||
SELECT * FROM t1 NATURAL JOIN t2 WHERE (Value1 = 'A' AND Value2 <> 'B') AND 1;
|
||||
ID Value1 ID Value2
|
||||
ID Value1 Value2
|
||||
drop table t1,t2;
|
||||
create table t1 (i int);
|
||||
create table t2 (i int);
|
||||
|
@ -124,8 +124,8 @@ grp a c id a c d
|
||||
3 5 C 3 5 B 5
|
||||
3 6 D 3 6 C 6
|
||||
select t1.*,t2.* from t1 natural join t2;
|
||||
grp a c id a c d
|
||||
1 1 a 1 1 a 1
|
||||
grp a c id d
|
||||
1 1 a 1 1
|
||||
drop table t1,t2;
|
||||
CREATE TABLE t1 (
|
||||
usr_id INT unsigned NOT NULL,
|
||||
@ -467,10 +467,10 @@ count color
|
||||
15 white
|
||||
7 green
|
||||
select * from t2 natural join t1;
|
||||
count color color name
|
||||
10 green green lime
|
||||
7 green green lime
|
||||
5 black black grape
|
||||
count color name
|
||||
10 green lime
|
||||
7 green lime
|
||||
5 black grape
|
||||
select t2.count, t1.name from t2 natural join t1;
|
||||
count name
|
||||
10 lime
|
||||
|
@ -2279,10 +2279,10 @@ a a a
|
||||
2 2 2
|
||||
3 3 3
|
||||
select * from t1 natural join (t1 as t2 left join t1 as t3 using (a));
|
||||
a a a
|
||||
1 1 1
|
||||
2 2 2
|
||||
3 3 3
|
||||
a a
|
||||
1 1
|
||||
2 2
|
||||
3 3
|
||||
select * from (t1 as t2 left join t1 as t3 using (a)) natural join t1;
|
||||
a a a
|
||||
1 1 1
|
||||
|
Reference in New Issue
Block a user