Re: Initplan placed at the righttree or the lefttree of joinnode - Mailing list pgsql-general

From Laurenz Albe
Subject Re: Initplan placed at the righttree or the lefttree of joinnode
Date
Msg-id 6a746f1921e02f739996d157d8673569941caeb4.camel@cybertec.at
Whole thread Raw
In response to Initplan placed at the righttree or the lefttree of joinnode  ("Hou, Zhijie" <houzj.fnst@cn.fujitsu.com>)
List pgsql-general
On Thu, 2020-10-22 at 09:43 +0000, Hou, Zhijie wrote:
> Hi,
> 
> I try to make some special query plan like the following.
> I have tried a lot SQL, but failed. 
> Can Initplan placed at the righttree or the lefttree of joinnode?
> 
>           (Fake) QUERY PLAN
> -------------------------------------------------------------------
>  Hash Join  (cost=13.15..26.48 rows=140 width=8)
>    Hash Cond: (test1.a = test.a)
>    ->  Seq Scan on test1  (cost=0.00..11.40 rows=140 width=4)
>    ->  Hash  (cost=11.40..11.40 rows=140 width=8) 
>         ->  InitPlan 1 (returns $0,$1)
> Or
> 
>          (Fake)  QUERY PLAN
> -------------------------------------------------------------------
>  Hash Join  (cost=13.15..26.48 rows=140 width=8)
>    Hash Cond: (test1.a = test.a)
>    ->  Seq Scan on test1  (cost=0.00..11.40 rows=140 width=4)
>         ->  InitPlan 1 (returns $0,$1)
>    ->  Hash  (cost=11.40..11.40 rows=140 width=8)

Do you mean something like this (with the pgbench table):

EXPLAIN SELECT * FROM pgbench_accounts a JOIN pgbench_accounts b USING (aid) WHERE a.bid = (SELECT 42);
                                       QUERY PLAN                                       
----------------------------------------------------------------------------------------
 Hash Join  (cost=31707.01..93539.02 rows=100000 width=190)
   Hash Cond: (b.aid = a.aid)
   InitPlan 1 (returns $0)
     ->  Result  (cost=0.00..0.01 rows=1 width=4)
   ->  Seq Scan on pgbench_accounts b  (cost=0.00..26394.00 rows=1000000 width=97)
   ->  Hash  (cost=28894.00..28894.00 rows=100000 width=97)
         ->  Seq Scan on pgbench_accounts a  (cost=0.00..28894.00 rows=100000 width=97)
               Filter: (bid = $0)
(8 rows)

Yours,
Laurenz Albe
-- 
Cybertec | https://www.cybertec-postgresql.com




pgsql-general by date:

Previous
From: "Hou, Zhijie"
Date:
Subject: Initplan placed at the righttree or the lefttree of joinnode
Next
From: Devrim Gündüz
Date:
Subject: Re: How to get debuginfo from building source code