mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 12:32:27 +01:00
select.test, select.result:
Added a test case for bug #10084. sql_yacc.yy: Fixed bug #10084: STRAIGHT_JOIN for expressions with ON was added. sql/sql_yacc.yy: Fixed bug #10084: STRAIGHT_JOIN for expressions with ON was added. mysql-test/r/select.result: Added a test case for bug #10084. mysql-test/t/select.test: Added a test case for bug #10084.
This commit is contained in:
parent
baae624cdb
commit
8ab8fca7d5
3 changed files with 37 additions and 2 deletions
|
@ -2682,3 +2682,20 @@ AND FK_firma_id = 2;
|
||||||
COUNT(*)
|
COUNT(*)
|
||||||
0
|
0
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
CREATE TABLE t1 (a int);
|
||||||
|
CREATE TABLE t2 (a int);
|
||||||
|
INSERT INTO t1 VALUES (1), (2), (3), (4), (5);
|
||||||
|
INSERT INTO t2 VALUES (2), (4), (6);
|
||||||
|
SELECT t1.a FROM t1 STRAIGHT_JOIN t2 ON t1.a=t2.a;
|
||||||
|
a
|
||||||
|
2
|
||||||
|
4
|
||||||
|
EXPLAIN SELECT t1.a FROM t1 STRAIGHT_JOIN t2 ON t1.a=t2.a;
|
||||||
|
id select_type table type possible_keys key key_len ref rows Extra
|
||||||
|
1 SIMPLE t1 ALL NULL NULL NULL NULL 5
|
||||||
|
1 SIMPLE t2 ALL NULL NULL NULL NULL 3 Using where
|
||||||
|
EXPLAIN SELECT t1.a FROM t1 INNER JOIN t2 ON t1.a=t2.a;
|
||||||
|
id select_type table type possible_keys key key_len ref rows Extra
|
||||||
|
1 SIMPLE t2 ALL NULL NULL NULL NULL 3
|
||||||
|
1 SIMPLE t1 ALL NULL NULL NULL NULL 5 Using where
|
||||||
|
DROP TABLE t1,t2;
|
||||||
|
|
|
@ -2255,3 +2255,19 @@ AND FK_firma_id = 2;
|
||||||
|
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Test for bug #10084: STRAIGHT_JOIN with ON expression
|
||||||
|
#
|
||||||
|
|
||||||
|
CREATE TABLE t1 (a int);
|
||||||
|
CREATE TABLE t2 (a int);
|
||||||
|
INSERT INTO t1 VALUES (1), (2), (3), (4), (5);
|
||||||
|
INSERT INTO t2 VALUES (2), (4), (6);
|
||||||
|
|
||||||
|
SELECT t1.a FROM t1 STRAIGHT_JOIN t2 ON t1.a=t2.a;
|
||||||
|
|
||||||
|
EXPLAIN SELECT t1.a FROM t1 STRAIGHT_JOIN t2 ON t1.a=t2.a;
|
||||||
|
EXPLAIN SELECT t1.a FROM t1 INNER JOIN t2 ON t1.a=t2.a;
|
||||||
|
|
||||||
|
DROP TABLE t1,t2;
|
||||||
|
|
||||||
|
|
|
@ -5108,10 +5108,12 @@ derived_table_list:
|
||||||
|
|
||||||
join_table:
|
join_table:
|
||||||
table_ref normal_join table_ref { TEST_ASSERT($1 && ($$=$3)); }
|
table_ref normal_join table_ref { TEST_ASSERT($1 && ($$=$3)); }
|
||||||
| table_ref STRAIGHT_JOIN table_factor
|
| table_ref STRAIGHT_JOIN table_ref
|
||||||
{ TEST_ASSERT($1 && ($$=$3)); $3->straight=1; }
|
{ TEST_ASSERT($1 && ($$=$3)); $3->straight=1; }
|
||||||
| table_ref normal_join table_ref ON expr
|
| table_ref normal_join table_ref ON expr
|
||||||
{ TEST_ASSERT($1 && ($$=$3)); add_join_on($3,$5); }
|
{ TEST_ASSERT($1 && ($$=$3)); add_join_on($3,$5); }
|
||||||
|
| table_ref STRAIGHT_JOIN table_ref ON expr
|
||||||
|
{ TEST_ASSERT($1 && ($$=$3)); $3->straight=1; add_join_on($3,$5); }
|
||||||
| table_ref normal_join table_ref
|
| table_ref normal_join table_ref
|
||||||
USING
|
USING
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue