Cita:
Empezado por Faust
Saludos, estoy usando una consulta con un LIKE en Interbase mediante un TQuery, pero lo que pongo en mi LIKE debe de ser en mayúsculas y minúsculas tal y como está en la base de datos, es decir si pongo:
Código SQL [-]
SELECT *
FROM CLIENTES
WHERE NOMBRE LIKE 's%'
ORDER BY NOMBRE ASC;
Solo me muestra los clientes cuyo nombre empieza con s minuscula.
Hay alguna forma para que este tipo de búsqueda no sea case sensitive?
|
No conozco una manera pero si se podría pasar todo a minúsculas o a mayúsculas antes de ponerlos en el LIKE, veamos:
Código SQL
[-]
Select *
From clientes
where lower(nombre) LIKE 's%'
order by...
La función lower está en las UDF de interbase pero tiene una recomendación que mejor leerla.
*****************************************
* Lower
* Functional description:
* Returns the input string into lower
* case characters. Note: This function
* will not work with international and
* non-ascii characters.
* Note: This function is NOT limited to
* receiving and returning only 80 characters,
* rather, it can use as long as 32767
* characters which is the limit on an
* INTERBASE character string.
*
*****************************************/
Yo encontré otra, "upper" que creo que funciona mejor y no es de una UDF, eso si, hay que pensar todo en mayúsculas. Y si te fijas en los foros la cosa está bien resuelta.
Saludos.