Re: a strange order by behavior

Поиск
Список
Период
Сортировка
От Samuel Gendler
Тема Re: a strange order by behavior
Дата
Msg-id BANLkTikCX59HXnvom_LQDT7eYf3OeCQMDg@mail.gmail.com
обсуждение исходный текст
Ответ на Re: a strange order by behavior  (Pavel Stehule <pavel.stehule@gmail.com>)
Список pgsql-sql


On Wed, Jun 22, 2011 at 8:57 PM, Pavel Stehule <pavel.stehule@gmail.com> wrote:
2011/6/22 Peter Eisentraut <peter_e@gmx.net>:
> On ons, 2011-06-22 at 02:39 -0700, Samuel Gendler wrote:
>> Pavel suggested using a collation of ucs_basic, but I get an error
>> when I
>> try that on linux:
>>
>> $ createdb -U u1 --lc-collate=ucs_basic -E UTF-8 test
>> createdb: database creation failed: ERROR:  invalid locale name ucs_basic
>
> ucs_basic is a collation name, which is an SQL object.  The argument of
> createdb --lc-collate is an operating system locale name.  You can't mix
> the two, even though they are similar.
>

ok, what I can to select, when I would to use a C like default order?


You can specify 'order by f1 using ~<~' or 'order by f1 using ~>~' in your query.  If you want your queries to use an index when ordering or comparing strings via LIKE, then you need to create a separate index that uses varchar_pattern_ops instead of the default varchar_ops.  The db will automatically use the varchar_pattern_ops index when appropriate.  varchar_pattern_ops uses C-like collation.

create index t1_f1_pattern on t1 (f1 varchar_pattern_ops)

 

В списке pgsql-sql по дате отправления:

Предыдущее
От: Pavel Stehule
Дата:
Сообщение: Re: a strange order by behavior
Следующее
От: Peter Eisentraut
Дата:
Сообщение: Re: a strange order by behavior