aboutsummaryrefslogtreecommitdiff
path: root/src/test/regress/sql/join.sql
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/regress/sql/join.sql')
-rw-r--r--src/test/regress/sql/join.sql12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/test/regress/sql/join.sql b/src/test/regress/sql/join.sql
index a41787d1f1e..fbaee480d32 100644
--- a/src/test/regress/sql/join.sql
+++ b/src/test/regress/sql/join.sql
@@ -1381,6 +1381,18 @@ select * from mki4(42);
drop function mki8(bigint, bigint);
drop function mki4(int);
+-- test const-folding of a whole-row Var into a per-field Var
+-- (need to inline a function to reach this case, else parser does it)
+create function f_field_select(t onek) returns int4 as
+$$ select t.unique2; $$ language sql immutable;
+
+explain (verbose, costs off)
+select (t2.*).unique1, f_field_select(t2) from tenk1 t1
+ left join onek t2 on t1.unique1 = t2.unique1
+ left join int8_tbl t3 on true;
+
+drop function f_field_select(t onek);
+
--
-- test extraction of restriction OR clauses from join OR clause
-- (we used to only do this for indexable clauses)