Tema: Búsqueda
Ver Mensaje Individual
  #5 (permalink)  
Antiguo 13/11/2002, 16:23
Avatar de chubu
chubu
 
Fecha de Ingreso: enero-2002
Ubicación: Buenos Aires
Mensajes: 133
Antigüedad: 22 años, 9 meses
Puntos: 0
Creo que IN() no iria para este caso, no es la manera en la que funciona esa funcion de mysql, ya que no podemos saber si alguna de esas palabras esta en el campo puntual, o sea, IN normalmente se usa

Código:
select ... where id in(1,2,3,4)
pero no podemos hacer algo del estilo

Código:
select ... where cuerpo in('palabra1','palabra2')
porque esto va a comparar el contenido de cuerpo con cada palabra del array por separado, y con la palabra completa.

Lo que si podemos hacer, es armar una consulta un tanto mas extensa, que concatene un LIKE por cada palabra para cada campo a registrar, algo del estilo:

Código:
select ... where campo1 like '%palabra1%' or campo1 like '%palabra2%';
seria un código sencillo de realizar, se hace un split de la cadena de busqueda, y un bucle que recorre el resultado armando el where del select.

saludos

chubu
__________________
:pensando:hay algo mal que no anda bien