Re: Index selection (and partial index) for BYTEA field

Поиск
Список
Период
Сортировка
От David Garamond
Тема Re: Index selection (and partial index) for BYTEA field
Дата
Msg-id 405C9F1A.5080409@zara.6.isreserved.com
обсуждение исходный текст
Ответ на Re: Index selection (and partial index) for BYTEA field  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-general
Tom Lane wrote:
>>There's no way to force use of either index, but you can probably get
>>your partial index picked if you define the index like:
>>[ example ]
>
> Probably a more practical way is to generate redundant WHERE conditions.
> For instance:
>
>     create index i_partition_id_000 on partition(id)
>     where id like '\\000%';
>     ... etc etc ...
>
> then when you really want to search for \000\001\002% you do:
>
>     select * from partition
>     where id like '\\000\\001\\002%' AND id like '\\000%';
>
> The second WHERE clause is redundant with the first, but it matches
> the partial index condition so that the index can be used.

That is one cool trick. And it worked!

--
dave


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

Предыдущее
От: Gregory Wood
Дата:
Сообщение: Re: transactions in plpgsql
Следующее
От: Mihai Tanasescu
Дата:
Сообщение: Simple list tables question