mirror of
https://github.com/MariaDB/server.git
synced 2025-07-27 18:02:13 +03:00
MDEV-11953: support of brackets in UNION/EXCEPT/INTERSECT operations
This commit is contained in:
@ -825,6 +825,9 @@ SELECT 1 FROM DUAL WHERE 1 GROUP BY 1 HAVING 1 ORDER BY 1
|
||||
FOR UPDATE;
|
||||
|
||||
--error ER_ORDER_WITH_PROC
|
||||
SELECT 1 FROM DUAL WHERE 1 GROUP BY 1 HAVING 1 ORDER BY 1
|
||||
PROCEDURE ANALYSE();
|
||||
--error ER_ORDER_WITH_PROC
|
||||
SELECT 1 FROM DUAL WHERE 1 GROUP BY 1 HAVING 1 ORDER BY 1
|
||||
PROCEDURE ANALYSE() FOR UPDATE;
|
||||
|
||||
@ -851,7 +854,7 @@ UNION
|
||||
SELECT 1 FROM DUAL WHERE 1 GROUP BY 1 HAVING 1 ORDER BY 1
|
||||
FOR UPDATE;
|
||||
|
||||
--error ER_PARSE_ERROR
|
||||
--error ER_CANT_USE_OPTION_HERE
|
||||
SELECT 1 FROM t1
|
||||
UNION
|
||||
SELECT 1 FROM DUAL WHERE 1 GROUP BY 1 HAVING 1 ORDER BY 1
|
||||
@ -876,7 +879,7 @@ UNION
|
||||
--echo # "FOR UPDATE" tests
|
||||
|
||||
SELECT 1 FROM t1 UNION SELECT 1 FROM t1 ORDER BY 1 LIMIT 1;
|
||||
SELECT 1 FROM t1 FOR UPDATE UNION SELECT 1 FROM t1 ORDER BY 1 LIMIT 1;
|
||||
(SELECT 1 FROM t1 FOR UPDATE) UNION SELECT 1 FROM t1 ORDER BY 1 LIMIT 1;
|
||||
SELECT 1 FROM t1 UNION SELECT 1 FROM t1 ORDER BY 1 LIMIT 1 FOR UPDATE;
|
||||
|
||||
|
||||
@ -916,7 +919,7 @@ SELECT EXISTS(SELECT 1 FROM t1 INTO @var17727401);
|
||||
|
||||
--error ER_PARSE_ERROR
|
||||
SELECT 1 FROM t1 INTO @var17727401 UNION SELECT 1 FROM t1 INTO t1;
|
||||
--error ER_WRONG_USAGE
|
||||
--error ER_PARSE_ERROR
|
||||
(SELECT 1 FROM t1 INTO @var17727401) UNION (SELECT 1 FROM t1 INTO t1);
|
||||
|
||||
SELECT 1 FROM t1 UNION SELECT 1 FROM t1 INTO @var17727401;
|
||||
@ -931,16 +934,16 @@ SELECT 1 FROM t1 PROCEDURE ANALYSE() INTO @var17727401;
|
||||
|
||||
# Limited support for (SELECT ...) ORDER/LIMIT:
|
||||
|
||||
(SELECT 1 FROM t1 ORDER BY 1) ORDER BY 1;
|
||||
(SELECT 1 FROM t1 LIMIT 1) LIMIT 1;
|
||||
# (SELECT 1 FROM t1 ORDER BY 1) ORDER BY 1;
|
||||
# (SELECT 1 FROM t1 LIMIT 1) LIMIT 1;
|
||||
|
||||
--error ER_PARSE_ERROR
|
||||
((SELECT 1 FROM t1 ORDER BY 1) ORDER BY 1) ORDER BY 1;
|
||||
--error ER_PARSE_ERROR
|
||||
((SELECT 1 FROM t1 LIMIT 1) LIMIT 1) LIMIT 1;
|
||||
#--error ER_PARSE_ERROR
|
||||
# ((SELECT 1 FROM t1 ORDER BY 1) ORDER BY 1) ORDER BY 1;
|
||||
#--error ER_PARSE_ERROR
|
||||
# ((SELECT 1 FROM t1 LIMIT 1) LIMIT 1) LIMIT 1;
|
||||
|
||||
(SELECT 1 FROM t1 ORDER BY 1) LIMIT 1;
|
||||
(SELECT 1 FROM t1 LIMIT 1) ORDER BY 1;
|
||||
# (SELECT 1 FROM t1 ORDER BY 1) LIMIT 1;
|
||||
# (SELECT 1 FROM t1 LIMIT 1) ORDER BY 1;
|
||||
|
||||
--error ER_PARSE_ERROR
|
||||
((SELECT 1 FROM t1 ORDER BY 1) LIMIT 1) ORDER BY 1);
|
||||
@ -1276,22 +1279,22 @@ DROP TABLE t1;
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (i INT);
|
||||
--error ER_WRONG_USAGE
|
||||
--error ER_PARSE_ERROR
|
||||
(SELECT * FROM t1 PROCEDURE ANALYSE(10, 10))
|
||||
UNION
|
||||
(SELECT * FROM t1 PROCEDURE ANALYSE(10, 10));
|
||||
|
||||
--error ER_WRONG_USAGE
|
||||
--error ER_PARSE_ERROR
|
||||
(SELECT * FROM t1 PROCEDURE ANALYSE(10, 10))
|
||||
UNION
|
||||
SELECT * FROM t1 PROCEDURE ANALYSE(10, 10);
|
||||
|
||||
--error ER_WRONG_USAGE
|
||||
--error ER_PARSE_ERROR
|
||||
(SELECT * FROM t1 PROCEDURE ANALYSE(10, 10))
|
||||
UNION
|
||||
(SELECT 1);
|
||||
|
||||
--error ER_WRONG_USAGE
|
||||
--error ER_PARSE_ERROR
|
||||
(SELECT * FROM t1 PROCEDURE ANALYSE(10, 10))
|
||||
UNION
|
||||
SELECT 1;
|
||||
|
Reference in New Issue
Block a user