Adding upstream version 26.3.8.
Signed-off-by: Daniel Baumann <daniel@debian.org>
This commit is contained in:
parent
7ee28625fb
commit
b80c44840a
89 changed files with 59179 additions and 57645 deletions
50
tests/fixtures/optimizer/qualify_columns.sql
vendored
50
tests/fixtures/optimizer/qualify_columns.sql
vendored
|
@ -227,7 +227,32 @@ START WITH title = 'President'
|
|||
CONNECT BY manager_ID = PRIOR employee_id
|
||||
ORDER BY
|
||||
employee_ID NULLS LAST;
|
||||
WITH EMPLOYEES AS (SELECT T.TITLE AS TITLE, T.EMPLOYEE_ID AS EMPLOYEE_ID, T.MANAGER_ID AS MANAGER_ID FROM (VALUES ('President', 1, NULL), ('Vice President Engineering', 10, 1), ('Programmer', 100, 10), ('QA Engineer', 101, 10), ('Vice President HR', 20, 1), ('Health Insurance Analyst', 200, 20)) AS T(TITLE, EMPLOYEE_ID, MANAGER_ID)) SELECT EMPLOYEES.EMPLOYEE_ID AS EMPLOYEE_ID, EMPLOYEES.MANAGER_ID AS MANAGER_ID, EMPLOYEES.TITLE AS TITLE, EMPLOYEES.LEVEL AS LEVEL FROM EMPLOYEES AS EMPLOYEES START WITH EMPLOYEES.TITLE = 'President' CONNECT BY EMPLOYEES.MANAGER_ID = PRIOR EMPLOYEES.EMPLOYEE_ID ORDER BY EMPLOYEE_ID;
|
||||
WITH EMPLOYEES AS (SELECT T.TITLE AS TITLE, T.EMPLOYEE_ID AS EMPLOYEE_ID, T.MANAGER_ID AS MANAGER_ID FROM (VALUES ('President', 1, NULL), ('Vice President Engineering', 10, 1), ('Programmer', 100, 10), ('QA Engineer', 101, 10), ('Vice President HR', 20, 1), ('Health Insurance Analyst', 200, 20)) AS T(TITLE, EMPLOYEE_ID, MANAGER_ID)) SELECT EMPLOYEES.EMPLOYEE_ID AS EMPLOYEE_ID, EMPLOYEES.MANAGER_ID AS MANAGER_ID, EMPLOYEES.TITLE AS TITLE, LEVEL AS LEVEL FROM EMPLOYEES AS EMPLOYEES START WITH EMPLOYEES.TITLE = 'President' CONNECT BY EMPLOYEES.MANAGER_ID = PRIOR EMPLOYEES.EMPLOYEE_ID ORDER BY EMPLOYEE_ID;
|
||||
|
||||
# execute: false
|
||||
# dialect: oracle
|
||||
WITH
|
||||
t1 AS (
|
||||
SELECT
|
||||
1 AS c1,
|
||||
1 AS c2,
|
||||
'Y' AS TOP_PARENT_INDICATOR,
|
||||
1 AS id
|
||||
FROM DUAL
|
||||
),
|
||||
t2 AS (
|
||||
SELECT
|
||||
1 AS c2,
|
||||
2 AS id
|
||||
FROM DUAL
|
||||
)
|
||||
SELECT t1.c1
|
||||
FROM t1
|
||||
LEFT JOIN t2 ON t1.c2 = t2.c2
|
||||
WHERE (t1.TOP_PARENT_INDICATOR = 'Y' OR LEVEL = 1)
|
||||
START WITH (t1.id IS NOT NULL)
|
||||
CONNECT BY PRIOR t1.id = t2.id;
|
||||
WITH T1 AS (SELECT 1 AS C1, 1 AS C2, 'Y' AS TOP_PARENT_INDICATOR, 1 AS ID FROM DUAL DUAL), T2 AS (SELECT 1 AS C2, 2 AS ID FROM DUAL DUAL) SELECT T1.C1 AS C1 FROM T1 T1 LEFT JOIN T2 T2 ON T1.C2 = T2.C2 WHERE (T1.TOP_PARENT_INDICATOR = 'Y' OR LEVEL = 1) START WITH (NOT T1.ID IS NULL) CONNECT BY PRIOR T1.ID = T2.ID;
|
||||
|
||||
--------------------------------------
|
||||
-- Derived tables
|
||||
|
@ -785,4 +810,25 @@ SELECT X.A AS FOO FROM X AS X GROUP BY X.A = 1;
|
|||
# dialect: snowflake
|
||||
# execute: false
|
||||
SELECT x.a AS foo FROM x WHERE foo = 1;
|
||||
SELECT X.A AS FOO FROM X AS X WHERE X.A = 1;
|
||||
SELECT X.A AS FOO FROM X AS X WHERE X.A = 1;
|
||||
|
||||
|
||||
--------------------------------------
|
||||
-- SEMI / ANTI Joins
|
||||
--------------------------------------
|
||||
|
||||
# title: SEMI JOIN table is excluded from the scope
|
||||
SELECT * FROM x SEMI JOIN y USING (b);
|
||||
SELECT x.a AS a, x.b AS b FROM x AS x SEMI JOIN y AS y ON x.b = y.b;
|
||||
|
||||
# title: ANTI JOIN table is excluded from the scope
|
||||
SELECT * FROM x ANTI JOIN y USING (b);
|
||||
SELECT x.a AS a, x.b AS b FROM x AS x ANTI JOIN y AS y ON x.b = y.b;
|
||||
|
||||
# title: SEMI + normal joins reinclude the table on scope
|
||||
SELECT * FROM x SEMI JOIN y USING (b) JOIN y USING (b);
|
||||
SELECT x.a AS a, COALESCE(x.b, y_2.b) AS b, y_2.c AS c FROM x AS x SEMI JOIN y AS y ON x.b = y.b JOIN y AS y_2 ON x.b = y_2.b;
|
||||
|
||||
# title: ANTI + normal joins reinclude the table on scope
|
||||
SELECT * FROM x ANTI JOIN y USING (b) JOIN y USING (b);
|
||||
SELECT x.a AS a, COALESCE(x.b, y_2.b) AS b, y_2.c AS c FROM x AS x ANTI JOIN y AS y ON x.b = y.b JOIN y AS y_2 ON x.b = y_2.b;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue