Re: different datatypes in index scan join

From: Jonathan Bartlett <johnnyb(at)eskimo(dot)com>
To: Richard Huxton <dev(at)archonet(dot)com>
Cc: Erik Price <eprice(at)ptc(dot)com>, <pgsql-general(at)postgresql(dot)org>
Subject: Re: different datatypes in index scan join
Date: 2003-06-23 21:06:42
Message-ID: Pine.GSU.4.44.0306231406300.14360-100000@eskimo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Is there a link to some of these discussions?

Jon

On Mon, 23 Jun 2003, Richard Huxton wrote:

> On Monday 23 Jun 2003 7:08 pm, Erik Price wrote:
> > At the bottom of an email from this list, I saw:
> > > -------------------------(end of broadcast)-------------------------
> > > TIP 9: the planner will ignore your desire to choose an index scan
> > > if your joining column's datatypes do not match
> >
> > If that's so, then what is the recommended way to ensure an index is
> > used if we want to join on different datatypes?
>
> Cast your datatypes. For example, if you have an index on an int8 field foo
> you'd use something like:
>
> WHERE foo = 7::int8;
>
> This is because the '7' is going to be assumed an int4. You could use the
> more-standard cast() function rather than the '::' operator if you don't mind
> the typing.
>
> This is part of PG's tradeoff where a flexible type system means being quite
> cautious about assumptions. Readers who know an easy way of having their cake
> and eating it should contact the hackers list as soon as they've read the
> archive discussions on type issues.
>
> --
> Richard Huxton
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to majordomo(at)postgresql(dot)org
>

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Carlos Oliva 2003-06-23 21:10:28 Re: Eliminating start error message: "unary operator
Previous Message Bruce Momjian 2003-06-23 21:04:20 Re: [HACKERS] PlPython