On Wed, May 25, 2016 at 6:34 PM, Lucas Possamai <drum.lu...@gmail.com>
wrote:

> I've got the following query:
>
> SELECT COUNT(DISTINCT j0_.id) AS sclr0FROM ja_customers j0_WHERE 
> ((LOWER(j0_.name_first) LIKE '%asd%'
>         OR LOWER(j0_.name_last) LIKE '%asd%'
>         OR LOWER(j0_.company) LIKE '%asd%'
>         OR LOWER(j0_.phone) LIKE '%asd%'
>         OR LOWER(j0_.mobile) LIKE '%asd%')
>        AND j0_.deleted = 'f'
>        AND j0_.clientid = 2565)
>   AND j0_.clientid = 2565
>
> It returns: 3
>
> I created a GIN index;
>
> CREATE INDEX CONCURRENTLY ON public.ja_customers USING gin (name_first 
> gin_trgm_ops, name_last gin_trgm_ops, company gin_trgm_ops, phone 
> gin_trgm_ops, mobile gin_trgm_ops);
>
> New query to hit the new index:
>
> SELECT COUNT(DISTINCT j0_.id) AS sclr0FROM ja_customers j0_WHERE 
> j0_.name_first LIKE '%asd%'
>         OR j0_.name_last LIKE '%asd%'
>         OR j0_.company LIKE '%asd%'
>         OR j0_.phone LIKE '%asd%'
>         OR j0_.mobile LIKE '%asd%'
>        AND j0_.deleted = 'f'
>        AND j0_.clientid = 2565
>   AND j0_.clientid = 2565
>
> It returns: 532
>
>
> The problem is that the new query returns different results...
>
> Please, what am I missing guys?
>
​Parentheses?

David J.
​

Reply via email to