Ver Mensaje Individual
  #5 (permalink)  
Antiguo 19/01/2015, 11:48
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 4 meses
Puntos: 447
Respuesta: busqueda de un valor en varios campos

Hola axelb:

Aquí habría que hacer una reflexión... ¿qué problema te implica el que tengas tres veces repetido el valor a buscar? ¿cuál es la razón por la que tienes que hacer esto?

Si piensas que estás siendo "redundante" y que al evitarlo estás optimizando la consulta, temo decirte que estás muy equivocado.

La solución que presenta mauritosuarez, si bien resuelve la cuestión, tiene un pésimo rendimiento, por lo que el performance de tu servidor se puede ver comprometido. Las funciones CONCAT y sobre todo las comparaciones tipo LIKE, DEBES EVITARLAS EN LA MEDIDA DE LO POSIBLE, es mejor hacer las comparaciones tal como lo haces al inicio.

Además, puedo pensar que tu campo es de tipo Numérico (al menos así lo parece), las funciones LIKE y CONCAT se aplican sobre campos tipo caracter, por lo tanto, al utilizarlas, el DBMS tiene que hacer una conversión implícita, para poder aplicar estas funciones, lo que invariablemente afectará en el rendimiento de la consulta y peor aun, puede ocasionarte problemas futuros derivados de estas conversiones.

Insisto, debes tener una verdadera razón de peso para hacer lo que quieres. como dice el dicho: "Hay muchas formas de matar una mosca, pero utilizar una pistola es demasiado".

Saludos
Leo.