summaryrefslogtreecommitdiff
path: root/mysql-test/t/subselect.test
diff options
context:
space:
mode:
authorgkodinov/kgeorge@macbook.gmz <>2007-01-23 12:34:50 +0200
committergkodinov/kgeorge@macbook.gmz <>2007-01-23 12:34:50 +0200
commit17a0207ecee35c82e0a488b900d0e6279a596577 (patch)
treeef50ee2680b393a9652b2c98dfe15de22de7f795 /mysql-test/t/subselect.test
parentc9df1caac83eac107acb0acfecf3b0a950e7ffa5 (diff)
parent884713fb08418ae819ba39a5429a3dd18586c423 (diff)
downloadmariadb-git-17a0207ecee35c82e0a488b900d0e6279a596577.tar.gz
Merge macbook.gmz:/Users/kgeorge/mysql/work/mysql-5.0-opt
into macbook.gmz:/Users/kgeorge/mysql/work/merge-5.1-opt
Diffstat (limited to 'mysql-test/t/subselect.test')
-rw-r--r--mysql-test/t/subselect.test34
1 files changed, 34 insertions, 0 deletions
diff --git a/mysql-test/t/subselect.test b/mysql-test/t/subselect.test
index eefa2528a17..98471622bc5 100644
--- a/mysql-test/t/subselect.test
+++ b/mysql-test/t/subselect.test
@@ -2510,6 +2510,40 @@ SELECT SQL_NO_CACHE COUNT(*)
DROP TABLE t1,t2;
#
+# Bug #25219: EXIST subquery with UNION over a mix of
+# correlated and uncorrelated selects
+#
+
+CREATE TABLE t1 (id char(4) PRIMARY KEY, c int);
+CREATE TABLE t2 (c int);
+
+INSERT INTO t1 VALUES ('aa', 1);
+INSERT INTO t2 VALUES (1);
+
+SELECT * FROM t1
+ WHERE EXISTS (SELECT c FROM t2 WHERE c=1
+ UNION
+ SELECT c from t2 WHERE c=t1.c);
+
+INSERT INTO t1 VALUES ('bb', 2), ('cc', 3), ('dd',1);
+
+SELECT * FROM t1
+ WHERE EXISTS (SELECT c FROM t2 WHERE c=1
+ UNION
+ SELECT c from t2 WHERE c=t1.c);
+
+INSERT INTO t2 VALUES (2);
+CREATE TABLE t3 (c int);
+INSERT INTO t3 VALUES (1);
+
+SELECT * FROM t1
+ WHERE EXISTS (SELECT t2.c FROM t2 JOIN t3 ON t2.c=t3.c WHERE t2.c=1
+ UNION
+ SELECT c from t2 WHERE c=t1.c);
+
+DROP TABLE t1,t2,t3;
+
+#
# Bug#20835 (literal string with =any values)
#
CREATE TABLE t1 (s1 char(1));