Hoy tuve este problema: hacer que una búsqueda a través de un formulario que solicita una cadena de texto busque sin importar si está en mayúsculas o minúsculas.
Por defecto el comportamiento del LIKE es "case sensitive" (distingue mayúsculas y minúsculas), lo que al ingresar "OBJETO", "Objeto", "objeto" u "ObJeTo" son cosideradas palabras distintas, con resultados distintos.
Lo que hice fue tomar el valor de búsqueda y convertirlo a "minúsculas", y luego hice lo mismo del lado de la consulta SQL.
Es decir:
$cadenaLower = strtolower($cadenaTexto);
$SQL = $SQL." lower(tabla.campo) LIKE '%$cadenaLower%' ";
No es un gran descubrimiento, pero por lo menos queda documentado para las generaciones futuras y tal vez le pueda ahorrar esos cinco minutos que perdí buscando las funciones ;-)
Ahora, mi pregunta es: como implementar con PostgreSQL una búsqueda fonética?
Suscribirse a:
Comentarios de la entrada (Atom)
Entradas populares
-
No es la primera vez que hablo de errores de ortografía ( interfaces, echo ), aunque no me considero experto, siempre ante la duda, investig...
-
Siguiendo con mi trabajo de DBA Part Time , tuve que resolver el siguiente problema: en nuestra base de datos existe información de una &quo...
-
Hablando hace un rato con un colega recordé nuevamente el tema de las "confusiones lingüísticas" que veo muy frecuentemente en cor...
-
Vim es un editor en línea de comandos muy popular en Linux . Su popularidad se debe principalmente a que puede ejecutarse en cualquier ...
-
En un proyecto gubernamental, donde me desempeño como consultor, estamos trabajando desde hace unos pocos años con el manejador de bases de ...
-
Mi primer smartphone fue un Motorola Milestone 2 , no llegué para la primera versión (M1), en sí por suerte, ya que ni bien estuvo disponib...
-
Creo que la última vez que fui a ver cine en 3D fue con Freddy Kruger (si mal no recuerdo, año 1991), donde sobre el final de la misma uno ...
-
No es la primera vez que lo comento , pero desde niño soy fanático de MJ , su música, su baile, en definitiva, por su "magia". La ...
-
Hace más de un año, en cada charla que impartía sobre tendencias y nuevas tecnologías, nunca olvidaba de comentar brevemente sobre AJAX , ad...
-
En mi país, You are Gay , habíamos cambiado la hora para aprovechar la luz solar y ahorrar energía eléctrica. Lo cómico del asunto es que mi...
1 comentario:
También se puede utilizar "ilike" en PostgreSQL para que "like" no distinga mayúsculas/minúsculas.
La desventaja es que no es compatible con el estándar SQL 92, etc.
Publicar un comentario