Re: NOT LIKE much faster than LIKE?

Поиск
Список
Период
Сортировка
От Andrea Arcangeli
Тема Re: NOT LIKE much faster than LIKE?
Дата
Msg-id 20060111203947.GL15897@opteron.random
обсуждение исходный текст
Ответ на Re: NOT LIKE much faster than LIKE?  ("Jim C. Nasby" <jnasby@pervasive.com>)
Ответы Re: NOT LIKE much faster than LIKE?  (Andrea Arcangeli <andrea@cpushare.com>)
Re: NOT LIKE much faster than LIKE?  ("Jim C. Nasby" <jnasby@pervasive.com>)
Список pgsql-performance
On Wed, Jan 11, 2006 at 12:40:32PM -0600, Jim C. Nasby wrote:
> On Tue, Jan 10, 2006 at 02:44:47AM +0100, Andrea Arcangeli wrote:
> > "cooperative" runs "WHERE kernel_version NOT LIKE '%% PREEMPT %%'", while
> > "preempt" runs "WHERE kernel_version LIKE '%% PREEMPT %%'. The only difference
>
> One thing you could do is change the like to:
>
> WHERE position(' PREEMPT ' in kernel_version) != 0

That alone fixed it, with this I don't even need the index (yet). Thanks
a lot.

> And then create a functional index on that:
>
> CREATE INDEX indexname ON tablename ( position(' PREEMPT ' in kernel_version) );

The index only helps the above query with = 0 and not the one with != 0,
but it seems not needed in practice.

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

Предыдущее
От: "Jim C. Nasby"
Дата:
Сообщение: Re: Slow query with joins
Следующее
От: Andrea Arcangeli
Дата:
Сообщение: Re: NOT LIKE much faster than LIKE?