Re: simple question about using an empty string building a partial index

From: "Ross J(dot) Reedstrom" <reedstrm(at)rice(dot)edu>
To: pgsql-admin(at)postgresql(dot)org
Subject: Re: simple question about using an empty string building a partial index
Date: 2011-05-03 16:05:38
Message-ID: 20110503160537.GA434@rice.edu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

On Tue, May 03, 2011 at 08:48:19AM +0200, Guillaume Lelarge wrote:
> On 05/03/2011 05:52 AM, Tom Hartnett wrote:
> > can it be done?
> >
> > create index my_idx on my_table(col1) where col1='';
> >
> > ERROR: invalid input syntax for integer: ""
> >
> > Seems simple enough but I don't know what the trick is.
> >
>
> col1 is an integer, not a string. And you cannot check for empty string
> in an integer column.

So if you've got a lot of records that display that column as an emtpy
string, it's actually probably filled with a NULL, so your index create
command would be something like:

create index my_idx on my_table(col1) where col1 is null;

Ross
--
Ross Reedstrom, Ph.D. reedstrm(at)rice(dot)edu
Systems Engineer & Admin, Research Scientist phone: 713-348-6166
Connexions http://cnx.org fax: 713-348-3665
Rice University MS-375, Houston, TX 77005
GPG Key fingerprint = F023 82C8 9B0E 2CC6 0D8E F888 D3AE 810E 88F0 BEDE

In response to

Browse pgsql-admin by date

  From Date Subject
Next Message Peter Geoghegan 2011-05-03 16:07:50 Re: [ADMIN] Can we Flush the Postgres Shared Memory ?
Previous Message Raymond O'Donnell 2011-05-03 15:49:49 Re: [ADMIN] Can we Flush the Postgres Shared Memory ?