Case insensitive zoeken over meerdere kolommen
20 January 2010
166 views
No Comment
Ik was vandaag nog eens wat bezig met een Firebird database en zoals verwacht kwamen er weer de nodige google zoek sessies aan te pas.
Deze keer was ik opzoek naar een mogelijkheid om te zoeken naar een string over meerdere kolommen. In MySQL kan je dit doen met de MATCH en AGAINST statements, maar deze zijn in Firebird niet aanwezig.
Na wat zoeken kwam ik erachter dat je LIKE wel kan gebruiken. Dit in combinatie met het samensvoegen van strings of ook wel concatenatie genoemd, vormt de perfecte vervanger voor de MySQL match against manier. Concatenatie van strings kan je in Firebird doen door een dubbel pipe symbool (||) te gebruiken.
Een extratje wat ik nog heb toegevoegd is het gebruik van upper zodat de zoek query case insensitive wordt.
0 | SELECT * FROM DRIVER WHERE UPPER(DRIVERNAME||FIRSTNAME||LASTNAME) LIKE UPPER('%jos%') |

























Leave your response!