From 4c61cb8ad2deff9890d262abcedd48dc0cf2b30c Mon Sep 17 00:00:00 2001 From: Liqf Date: Wed, 21 Sep 2022 15:59:45 +0800 Subject: [PATCH 1/2] with_case --- .../data/query_p0/with/test_with.out | 13 ++++++++++ .../suites/query_p0/with/test_with.groovy | 26 +++++++++++++++++++ 2 files changed, 39 insertions(+) diff --git a/regression-test/data/query_p0/with/test_with.out b/regression-test/data/query_p0/with/test_with.out index fc5c32bfbf0e1a..cd4b47660290e1 100644 --- a/regression-test/data/query_p0/with/test_with.out +++ b/regression-test/data/query_p0/with/test_with.out @@ -17,3 +17,16 @@ 1 1 +-- !select -- +1 2 1 2 + +-- !select -- +1 +2 +3 + +-- !select -- +1 +2 +3 + diff --git a/regression-test/suites/query_p0/with/test_with.groovy b/regression-test/suites/query_p0/with/test_with.groovy index 76b064eede035e..222611b3fac041 100644 --- a/regression-test/suites/query_p0/with/test_with.groovy +++ b/regression-test/suites/query_p0/with/test_with.groovy @@ -17,8 +17,34 @@ suite("test_with") { sql "use test_query_db" + //Basic WITH qt_select """ select 1 from (with w as (select 1 from baseall where exists (select 1 from baseall)) select 1 from w ) tt """ + qt_select """ + WITH q1(x,y) AS (SELECT 1,2) + SELECT * FROM q1, q1 AS q2; + """ + + qt_select """ + WITH outermost(x) AS ( + SELECT 1 + UNION (WITH innermost as (SELECT 2) + SELECT * FROM innermost + UNION SELECT 3) + ) + SELECT * FROM outermost; + """ + qt_select """ + WITH outermost(x) AS ( + SELECT 1 + UNION (WITH innermost as (SELECT 2) + SELECT * FROM innermost + UNION SELECT 3) + ) + SELECT * FROM outermost ORDER BY 1; + """ + + } From 6b1a73e255939e430f7b610ed89acd70434afec7 Mon Sep 17 00:00:00 2001 From: Liqf Date: Thu, 22 Sep 2022 10:50:13 +0800 Subject: [PATCH 2/2] fix --- regression-test/suites/query_p0/with/test_with.groovy | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/regression-test/suites/query_p0/with/test_with.groovy b/regression-test/suites/query_p0/with/test_with.groovy index 222611b3fac041..9515f9d3d020a3 100644 --- a/regression-test/suites/query_p0/with/test_with.groovy +++ b/regression-test/suites/query_p0/with/test_with.groovy @@ -34,7 +34,7 @@ suite("test_with") { SELECT * FROM innermost UNION SELECT 3) ) - SELECT * FROM outermost; + SELECT x FROM outermost order by 1; """ qt_select """ WITH outermost(x) AS (