Ik weet niets over Symfony, maar je kunt vervangen
a ILIKE b
met
lower(a) LIKE lower(b)
Je zou ook de operator ~~*
. kunnen proberen , wat een synoniem is voor ILIKE
Het heeft een iets lagere operatorprioriteit, dus je hebt mogelijk haakjes nodig voor aaneengeschakelde tekenreeksen waar je dat niet zou doen met ILIKE
a ILIKE b || c
wordt
a ~~* (b || c)
De handleiding over patroonherkenning, te beginnen met LIKE
/ ILIKE
.
Ik denk dat deze man hetzelfde probleem had en een antwoord kreeg:
http://forum.symfony-project.org/viewtopic.php?f=23&t=40424
Vanzelfsprekend kunt u Symfony2 uitbreiden met SQL-leverancierspecifieke functies:
http://docs.doctrine-project.org/projects/doctrine-orm/en/2.1/cookbook/dql-user-defined-functions.html
Ik ben geen fan van ORM's en frameworks die de rijke functionaliteit van Postgres afslachten om "draagbaar" te blijven (wat bijna nooit werkt).