diff options
author | unknown <gkodinov/kgeorge@magare.gmz> | 2007-03-14 17:04:45 +0200 |
---|---|---|
committer | unknown <gkodinov/kgeorge@magare.gmz> | 2007-03-14 17:04:45 +0200 |
commit | f3a731cadd96a08395210e201d63a85b018896a2 (patch) | |
tree | 5d2eeb6a9fb0b831bce583b40626468473f9bc0a /mysql-test/t/select.test | |
parent | f0c50440966778b8e084f2ab6f9119dc177a4da7 (diff) | |
parent | ff810fb952f5f104337ea2614c96387e4c44918c (diff) | |
download | mariadb-git-f3a731cadd96a08395210e201d63a85b018896a2.tar.gz |
Merge magare.gmz:/home/kgeorge/mysql/autopush/B26794-5.0-opt
into magare.gmz:/home/kgeorge/mysql/autopush/B26794-merge-5.1-opt
mysql-test/r/select.result:
Auto merged
mysql-test/t/select.test:
Auto merged
sql/field.cc:
Auto merged
sql/filesort.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_table.cc:
Auto merged
mysql-test/r/alter_table.result:
merged 5.0-opt -> 5.1-opt
mysql-test/r/gis-rtree.result:
merged 5.0-opt -> 5.1-opt
mysql-test/r/order_by.result:
merged 5.0-opt -> 5.1-opt
mysql-test/r/subselect.result:
merged 5.0-opt -> 5.1-opt
mysql-test/t/alter_table.test:
merged 5.0-opt -> 5.1-opt
mysql-test/t/order_by.test:
merged 5.0-opt -> 5.1-opt
mysql-test/t/subselect.test:
merged 5.0-opt -> 5.1-opt
Diffstat (limited to 'mysql-test/t/select.test')
-rw-r--r-- | mysql-test/t/select.test | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/mysql-test/t/select.test b/mysql-test/t/select.test index f7f458e277c..f613b836350 100644 --- a/mysql-test/t/select.test +++ b/mysql-test/t/select.test @@ -3299,4 +3299,51 @@ SELECT * FROM t1 LEFT JOIN t2 ON t1.name=t2.name; DROP TABLE t1,t2; + +# +# Bug #26963: join with predicates that contain fields from equalities evaluated +# to constants after constant table substitution +# + +CREATE TABLE t1 ( + access_id int NOT NULL default '0', + name varchar(20) default NULL, + rank int NOT NULL default '0', + KEY idx (access_id) +); + +CREATE TABLE t2 ( + faq_group_id int NOT NULL default '0', + faq_id int NOT NULL default '0', + access_id int default NULL, + UNIQUE KEY idx1 (faq_id), + KEY idx2 (faq_group_id,faq_id) +); + +INSERT INTO t1 VALUES + (1,'Everyone',2),(2,'Help',3),(3,'Technical Support',1),(4,'Chat User',4); +INSERT INTO t2 VALUES + (261,265,1),(490,494,1); + + +SELECT t2.faq_id + FROM t1 INNER JOIN t2 IGNORE INDEX (idx1) + ON (t1.access_id = t2.access_id) + LEFT JOIN t2 t + ON (t.faq_group_id = t2.faq_group_id AND + find_in_set(t.access_id, '1,4') < find_in_set(t2.access_id, '1,4')) + WHERE + t2.access_id IN (1,4) AND t.access_id IS NULL AND t2.faq_id in (265); + +SELECT t2.faq_id + FROM t1 INNER JOIN t2 + ON (t1.access_id = t2.access_id) + LEFT JOIN t2 t + ON (t.faq_group_id = t2.faq_group_id AND + find_in_set(t.access_id, '1,4') < find_in_set(t2.access_id, '1,4')) + WHERE + t2.access_id IN (1,4) AND t.access_id IS NULL AND t2.faq_id in (265); + +DROP TABLE t1,t2; + --echo End of 5.0 tests |