Re: Cross-datatype Comparisons and Indexes - Mailing list pgsql-general

From Mike Mascari
Subject Re: Cross-datatype Comparisons and Indexes
Date
Msg-id 41267774.8080809@mascari.com
Whole thread Raw
In response to Cross-datatype Comparisons and Indexes  (Thomas F.O'Connell <tfo@sitening.com>)
List pgsql-general
Thomas F.O'Connell wrote:

> Since the current stable version of postgres (7.4.x) doesn't
> allow cross-datatype comparisons of indexes, is it always
> necessary to cast my application data explicitly in order for an
> index to be used, even among the integer types?
>
> E.g., If I have a table with a bigint primary key and application
> data compared against that primary key, must I always explicitly
> cast the application data to bigint if I want postgres to use the
> index?
>
> SELECT * FROM some_table WHERE primary_key_column = 42
>
> vs.
>
> SELECT * FROM some_table WHERE primary_key_column = 42::int8
>
> There's no way to tell postgres to treat incoming data implicitly
> as the type of the column, right?

You can always set your initial sequence values to > 4.2 billion
(2^32) which could also probably expose some 4-byte integer
assumptions your code may make. You'd not need to use an explicit
cast in that scenario either.

Mike Mascari


pgsql-general by date:

Previous
From: "Joshua D. Drake"
Date:
Subject: Re: Cross-datatype Comparisons and Indexes
Next
From: "Marc G. Fournier"
Date:
Subject: New Stable Releases to Address Critical Bugs