PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Symfony2 Doctrine - cláusula ILIKE para PostgreSQL?


Eu não sei sobre o Symfony, mas você pode substituir
a ILIKE b

com
lower(a) LIKE lower(b)

Você também pode tentar o operador ~~* , que é sinônimo de ILIKE Ele tem precedência de operador um pouco menor, então você pode precisar de parênteses para strings concatenadas onde você não precisaria com ILIKE
a ILIKE b || c

torna-se
a ~~* (b || c)

O manual sobre correspondência de padrões, começando com LIKE / ILIKE .

Acho que esse cara teve o mesmo problema e obteve uma resposta:
http://forum.symfony-project.org/viewtopic.php?f=23&t=40424

Obviamente, você pode estender o Symfony2 com funções específicas do fornecedor SQL:
http://docs.doctrine-project.org/projects/doctrine-orm/en/2.1/cookbook/dql-user-defined-functions.html

Eu não sou fã de ORMs e frameworks massacrando a rica funcionalidade do Postgres apenas para permanecer "portátil" (o que quase nunca funciona).