Re: Problem with create index - Mailing list pgsql-general

From Rajesh Kumar Mallah
Subject Re: Problem with create index
Date
Msg-id 200311111510.27873.mallah@trade-india.com
Whole thread Raw
In response to Re: Problem with create index  (Stephan Szabo <sszabo@megazone.bigpanda.com>)
List pgsql-general
On Tuesday 11 Nov 2003 2:00 pm, Stephan Szabo wrote:
> On Tue, 11 Nov 2003, Rajesh Kumar Mallah wrote:
> > Hmmm... am i doing anything really silly?
>
> Functional indexes on 7.3 and earlier only allow a function over one or
> more columns (which would disallow the below as a function over a function
> over a column).  The usual workaround would be to make an immutable
> function that does both functions on its argument something like:
>
> create function lower_btrim(text) returns text as 'select
> lower(btrim($1));' language 'sql' immutable;
> create index profile_master2 on profile_master(lower_btrim(email));


Thanks for the work around


>
> In 7.4 I believe the below should work.
>
> > tradein_clients=# CREATE INDEX profile_master2 on profile_master (lower(
> > btrim(email) ) ); ERROR:  parser: parse error at or near "(" at character
> > 61

Yes it does work

template1=# CREATE INDEX  profile_master2  on t_a(lower(btrim(email)));
CREATE INDEX
template1=#
template1=# CREATE  unique  INDEX  profile_master3  on t_a(lower(btrim(email)));
CREATE INDEX
template1=#


Regds
Mallah.

pgsql-general by date:

Previous
From: Ma Siva Kumar
Date:
Subject: multibyte support
Next
From: "C G"
Date:
Subject: Changing xml in a database