From: | "Thomas G(dot) Lockhart" <lockhart(at)alumni(dot)caltech(dot)edu> |
---|---|
To: | "Vadim B(dot) Mikheev" <vadim(at)sable(dot)krasnoyarsk(dot)su> |
Cc: | Bruce Momjian <maillist(at)candle(dot)pha(dot)pa(dot)us>, hackers(at)postgresql(dot)org |
Subject: | Re: [HACKERS] Re: subselects |
Date: | 1998-01-12 13:41:31 |
Message-ID: | 34BA1D8B.BBC1BBE4@alumni.caltech.edu |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
> > btw, to implement "(a,b,c) OP (d,e,f)" I made a new routine in the parser called
> > makeRowExpr() which breaks this up into a sequence of "and" and/or "or" expressions.
> > If lists are handled farther back, this routine should move to there also and the
> > parser will just pass the lists. Note that some assumptions have to be made about the
> > meaning of "(a,b) OP (c,d)", since usually we only have knowledge of the behavior of
> > "a OP c". Easy for the standard SQL operators, unknown for others, but maybe it is OK
> > to disallow those cases or to look for specific appearance of the operator to guess
> > the behavior (e.g. if the operator has "<" or "=" or ">" then build as "and"s and if
> > it has "<>" or "!" then build as "or"s.
>
> Sorry, I forgot something: is (a, b) OP (x, y) in standard ?
Yes. The problem wouldn't be very interesting otherwise :)
- Tom
> If not then I suggest to don't implement it at all and allow
> (a, b) OP [ANY|ALL] (subselect) only.
From | Date | Subject | |
---|---|---|---|
Next Message | Bruce Momjian | 1998-01-12 13:58:25 | Re: [HACKERS] Re: subselects |
Previous Message | Bruce Momjian | 1998-01-12 13:33:05 | Re: [HACKERS] = is not always defined as equality is bad |