Re: New thoughts about indexing cross-type comparisons

From: Dave Smith <dave(dot)smith(at)candata(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: New thoughts about indexing cross-type comparisons
Date: 2003-09-16 18:06:45
Message-ID: 3F675135.8040306@candata.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

My point was that it was inconstant behavour. What exactly are you
comparing with int2? To me the case without the cast should should throw
the same error as the statement with the cast.

Tom Lane wrote:
> Dave Smith <dave(dot)smith(at)candata(dot)com> writes:
>
>>If this is only dealing with constants, why not just explicitly add a
>>cast to the constant of the column type at the planner level. It would
>>solve this problem as well ...
>
>
>>create table test (f int2);
>>select * from test where f=cast('1981928928921' as int2);
>>ERROR: pg_atoi: error reading "1981928928921": Numerical result out of
>>range
>
>
>> select * from test where f=1981928928921;
>> f
>>---
>>(0 rows)
>
>
> Uh, your own example points out why we can't just insert a cast to int2
> --- it changes the results. Or am I missing your point?
>
> (In any case, we aren't necessarily dealing with constants.)
>
> regards, tom lane
>

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2003-09-16 18:19:23 Re: New thoughts about indexing cross-type comparisons
Previous Message Richard Hall 2003-09-16 17:55:30 Re: massive quotes?