Re: Comparing strings with non-ASCII characters - Mailing list pgsql-general

From Artur Rataj
Subject Re: Comparing strings with non-ASCII characters
Date
Msg-id Pine.LNX.4.33.0211131650200.11316-100000@linux.iitis.gliwice.pl
Whole thread Raw
In response to Comparing strings with non-ASCII characters  (Artur Rataj <arataj@iitis.gliwice.pl>)
List pgsql-general
I have set locale to C, made initdb and started postgres, and the index is
not used again.

explain select idescr.string from isbibc_fti_descr idescr where
idescr.string ~ '^string.*';
NOTICE:  QUERY PLAN:

Seq Scan on isbibc_fti_descr idescr  (cost=0.00..63910.04 rows=17033
width=44)

On Wed, 13 Nov 2002, Artur Rataj wrote:

> Hi,
>
> Is it possible in Postgres to use non-ASCII characters and have enabled
> index optimizations for the ~ operator? Would it work correctly with
> locale set to C for expressions of the form ~ '^string.*'? Or is there a
> way to substitue expressions like this with two comparisons? I have tried
> to do it like that >= 'string' and <= 'string_' where _ would be a
> character sorted after any other used in the searched table, but I did
> not found such a character in the locale pl_PL. Anyway, why the index
> optimizations are disabled for the ~ operator and not for the < or >
> operators in the locale? Is not there a similar problem with all of the
> three operators in a non-ASCII locale? Could not the lack of index
> optimizations be fixed in Postgres for locales like pl_PL with a simple
> reordering of characters for a collator, at least to get the < and >
> operators working right with index optimizations in such locales?
>

Best regards,
Artur Rataj


pgsql-general by date:

Previous
From: Björn Metzdorf
Date:
Subject: Re: tsearch consistency trigger on inheritated table
Next
From: Björn Metzdorf
Date:
Subject: Re: tsearch consistency trigger on inheritated table