Re: lower

From: "Alexander M(dot) Pravking" <fduch(at)antar(dot)bryansk(dot)ru>
To: pgsql-ru-general <pgsql-ru-general(at)postgresql(dot)org>
Subject: Re: lower
Date: 2005-01-20 20:32:28
Message-ID: 20050120203228.GD4458@dyatel.antar.bryansk.ru
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-ru-general

On Thu, Jan 20, 2005 at 09:44:49PM +0300, Nick Gazaloff wrote:
> Господа!
>
> Я вижу, что заработали lower и upper для русских строк. Но: я привык
> делать базы в UNICODE, а чтобы при этом работали lower/upper, нужно
> делать initdb с локалью ru_RU.UTF-8. Но тогда отваливается использование
> индексов для LIKE.
>
> Получается, что это непреодолимая дилемма? Или lower/upper, или LIKE по
> индексу?

Начиная вроде с 7.4 можно задать индексу opclass varchar_pattern_ops,
тогда он будет использоваться для LIKE и регекспов (рагумеется, только
для LIKE 'string%' и ~ '^string'):

http://borg.postgresql.org/docs/7.4/static/indexes-opclass.html

Неудобно только, что отдельный индекс приходится строить.

Между прочим, регекспы работают в разы быстрее LIKE.

--
Fduch M. Pravking

In response to

Browse pgsql-ru-general by date

  From Date Subject
Next Message Nick Gazaloff 2005-01-20 21:17:41 Re: lower или LIKE?
Previous Message Oleg Bartunov 2005-01-20 20:22:13 Re: lower или LIKE?