diff options
author | unknown <mhansson/martin@linux-st28.site> | 2008-01-11 19:13:07 +0100 |
---|---|---|
committer | unknown <mhansson/martin@linux-st28.site> | 2008-01-11 19:13:07 +0100 |
commit | ab0f3e4661f720c852e76771120127bdcce2cfea (patch) | |
tree | f74fe73bbd210f1d1fc78e60d0f4e72cb897a196 /mysql-test/t/group_by.test | |
parent | 666efa1c43344a0b4dbe815e57333647d4d8f2b3 (diff) | |
parent | df8e9fc234234958ee0cb6195b724657b2cd128c (diff) | |
download | mariadb-git-ab0f3e4661f720c852e76771120127bdcce2cfea.tar.gz |
Merge linux-st28.site:/home/martin/mysql/src/bug31797/my50-bug31797
into linux-st28.site:/home/martin/mysql/src/bug31797/my51-bug31797
sql/item.cc:
Auto merged
mysql-test/r/group_by.result:
Bug#31797: Manual merge
mysql-test/t/group_by.test:
Bug#31797: Manual merge
Diffstat (limited to 'mysql-test/t/group_by.test')
-rw-r--r-- | mysql-test/t/group_by.test | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/mysql-test/t/group_by.test b/mysql-test/t/group_by.test index 2ea7aed6bd2..523aac519c1 100644 --- a/mysql-test/t/group_by.test +++ b/mysql-test/t/group_by.test @@ -911,3 +911,51 @@ EXPLAIN SELECT b from t2 GROUP BY b; SELECT b from t2 GROUP BY b; DROP TABLE t1; + +# +# Bug #31797: error while parsing subqueries -- WHERE is parsed as HAVING +# +CREATE TABLE t1 ( a INT, b INT ); + +SELECT b c, (SELECT a FROM t1 WHERE b = c) +FROM t1; + +SELECT b c, (SELECT a FROM t1 WHERE b = c) +FROM t1 +HAVING b = 10; + +--error ER_ILLEGAL_REFERENCE +SELECT MAX(b) c, (SELECT a FROM t1 WHERE b = c) +FROM t1 +HAVING b = 10; + +SET @old_sql_mode = @@sql_mode; +SET @@sql_mode='ONLY_FULL_GROUP_BY'; + +SELECT b c, (SELECT a FROM t1 WHERE b = c) +FROM t1; + +--error ER_NON_GROUPING_FIELD_USED +SELECT b c, (SELECT a FROM t1 WHERE b = c) +FROM t1 +HAVING b = 10; + +--error ER_ILLEGAL_REFERENCE +SELECT MAX(b) c, (SELECT a FROM t1 WHERE b = c) +FROM t1 +HAVING b = 10; + +INSERT INTO t1 VALUES (1, 1); +SELECT b c, (SELECT a FROM t1 WHERE b = c) +FROM t1; + +INSERT INTO t1 VALUES (2, 1); +--error ER_SUBQUERY_NO_1_ROW +SELECT b c, (SELECT a FROM t1 WHERE b = c) +FROM t1; + +DROP TABLE t1; +SET @@sql_mode = @old_sql_mode; + + + |