Re: Query with "ILIKE ALL" does not use the index - Mailing list pgsql-performance

From Nicolas Even
Subject Re: Query with "ILIKE ALL" does not use the index
Date
Msg-id CALghGHMbrs224QWfDojiA4guDdyoctFVv4YkfAnMi8sW0eAinw@mail.gmail.com
Whole thread Raw
In response to Re: Query with "ILIKE ALL" does not use the index  (Matthew Hall <mhall@mhcomputing.net>)
List pgsql-performance
Hi Matthew,

I finally used "WHERE name ILIKE arr[1] AND name ILIKE ALL(arr)" which
works well enough for my use case.

Thank you
Nicolas

On 26 July 2018 at 19:22, Matthew Hall <mhall@mhcomputing.net> wrote:
> On Jul 26, 2018, at 9:44 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>>
>> Nicolas Even <neven@ztel.org> writes:
>>> However when I run the same (as far as I understand it) query but with
>>> the ALL operator, the index is not used:
>>> explain analyze select name from totoz where name ilike all(array['%tot%']);
>>
>> There's only index support for "op ANY (array)", not "op ALL (array)".
>>
>>                       regards, tom lane
>
> Nicolas,
>
> Could you work around the limitation with a two-clause WHERE?
>
> First clause ANY, second clause ALL.
>
> I've done some similar tricks on similar sorts of queries.
>
> Matthew.


pgsql-performance by date:

Previous
From: Matthew Hall
Date:
Subject: Re: Query with "ILIKE ALL" does not use the index
Next
From: Nicolas Even
Date:
Subject: Re: Query with "ILIKE ALL" does not use the index