From: | "Mitch Vincent" <mitch(at)venux(dot)net> |
---|---|
To: | "gav" <gav(at)nlr(dot)ru>, <pgsql-sql(at)postgresql(dot)org> |
Subject: | Re: lower() for varchar data by creating an index |
Date: | 2000-05-17 14:31:50 |
Message-ID: | 00d901bfc00c$a3a36c00$4100000a@venux.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
CREATE function lower(varchar) returns text as 'lower' language 'internal'
with (iscachable);
It's a bit slower than if it was actually in the backend but it's a very
tiny difference. I spoke to Tom Lane about this, it's on the TODO list I
believe for 7.1. In the meantime the above will work great..
- Mitch
"The only real failure is quitting."
----- Original Message -----
From: Alex Guryanow <gav(at)nlr(dot)ru>
To: <pgsql-sql(at)postgresql(dot)org>
Sent: Wednesday, May 17, 2000 3:51 AM
Subject: [SQL] lower() for varchar data by creating an index
> Hi,
>
> I have a table called t1 with field f1 of type varchar(40):
>
> CREATE TABLE t1 (f1 varchar(40));
>
> To make a case insensitive search I build the query like
>
> SELECT f1 FROM t1 WHERE lower( f1 ) LIKE 'alex%';
>
> This works fine. But when I try to make an index to speed up the query
using the command
>
> CREATE INDEX t1_f1_idx ON t1 (lower(f1));
>
> I receive the following error:
>
> ERROR: DefineIndex: function 'lower(varchar)' does not exist
>
> Why by executing the query the function 'lower(varchar)' exists and by
creating the index don't?
>
> I use Postgres 7.0.
>
> Best regards,
> Alex
>
>
>
From | Date | Subject | |
---|---|---|---|
Next Message | Kyle Bateman | 2000-05-17 15:15:46 | Re: question on update/delete rules on views |
Previous Message | Brook Milligan | 2000-05-17 13:52:02 | Re: question on update/delete rules on views |