Re: [HACKERS] Re: subselects

Vadim B. Mikheev <vadim@sable.krasnoyarsk.su>

From: "Vadim B. Mikheev" <vadim@sable.krasnoyarsk.su>
To: Bruce Momjian <maillist@candle.pha.pa.us>
Cc: lockhart@alumni.caltech.edu, hackers@postgreSQL.org
Date: 1998-01-16T09:34:15Z
Lists: pgsql-hackers
Bruce Momjian wrote:
> 
> > typedef struct SubLink {
> >       NodeTag         type;
> >       int             linkType; /* EXISTS, ALL, ANY, EXPR */
> >       bool            useor;    /* TRUE for <> */
> >       List            *lefthand; /* List of Var/Const nodes on the left */
> >       List            *oper;     /* List of Oper nodes */
> >       Query           *subquery; /* */
> > } SubLink;
> 
> OK, we add this structure above.  During parsing, *subquery actually
> will hold Node *parsetree, not Query *.
            ^^^^^^^^^^^^^^^
But optimizer will get node Query here, yes ?

> 
> And add to Query:
> 
>         bool    hasSubLinks;
> 
> Also need a function to return a List* of SubLink*.  I just did a
> similar thing with Aggreg*.  And Var gets:
> 
>         int uplevels;
> 
> Is that it?

Yes.

Vadim