(0 rows)
deallocate mt_q1;
-set plan_cache_mode = force_generic_plan;
-prepare mt_q2 (int) as select * from ma_test where a >= $1 order by b limit 1;
--- Ensure output list looks sane when the MergeAppend has no subplans.
-explain (analyze, verbose, costs off, summary off, timing off) execute mt_q2 (35);
- QUERY PLAN
---------------------------------------------
- Limit (actual rows=0 loops=1)
- Output: ma_test.a, ma_test.b
- -> Merge Append (actual rows=0 loops=1)
- Sort Key: ma_test.b
- Subplans Removed: 3
-(5 rows)
-
-deallocate mt_q2;
-reset plan_cache_mode;
-- ensure initplan params properly prune partitions
explain (analyze, costs off, summary off, timing off) select * from ma_test where a >= (select min(b) from ma_test_p2) order by b;
QUERY PLAN
) s(a, b, c)
where s.a = $1 and s.b = $2 and s.c = (select 1);
explain (costs off) execute q (1, 1);
- QUERY PLAN
-----------------------------------------------------
+ QUERY PLAN
+---------------------------------------------------------------
Append
InitPlan 1 (returns $0)
-> Result
+ Subplans Removed: 1
-> Seq Scan on p1 p
- Filter: ((a = 1) AND (b = 1) AND (c = $0))
+ Filter: ((a = $1) AND (b = $2) AND (c = $0))
-> Seq Scan on q111 q1
- Filter: ((a = 1) AND (b = 1) AND (c = $0))
+ Filter: ((a = $1) AND (b = $2) AND (c = $0))
-> Result
- One-Time Filter: (1 = $0)
-(9 rows)
+ One-Time Filter: ((1 = $1) AND (1 = $2) AND (1 = $0))
+(10 rows)
execute q (1, 1);
a | b | c
deallocate mt_q1;
-set plan_cache_mode = force_generic_plan;
-
-prepare mt_q2 (int) as select * from ma_test where a >= $1 order by b limit 1;
-
--- Ensure output list looks sane when the MergeAppend has no subplans.
-explain (analyze, verbose, costs off, summary off, timing off) execute mt_q2 (35);
-
-deallocate mt_q2;
-reset plan_cache_mode;
-
-- ensure initplan params properly prune partitions
explain (analyze, costs off, summary off, timing off) select * from ma_test where a >= (select min(b) from ma_test_p2) order by b;