Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Buscando en multiples campos de una tabla

Estas en el tema de Buscando en multiples campos de una tabla en el foro de Mysql en Foros del Web. Saludos amigos Tengo una pregunta y quisiera saber si es viable o si existe alguna manera de hacerlo. Tengo una lista de records donde presento ...
  #1 (permalink)  
Antiguo 19/01/2011, 14:18
Avatar de GXT2  
Fecha de Ingreso: junio-2009
Ubicación: Fort Lauderdale, FL
Mensajes: 152
Antigüedad: 14 años, 10 meses
Puntos: 0
Busqueda Buscando en multiples campos de una tabla

Saludos amigos

Tengo una pregunta y quisiera saber si es viable o
si existe alguna manera de hacerlo.

Tengo una lista de records donde presento el nombre el apellido
la direccion de esa persona.

Ahora cuando tengo buscador que lo estoy haciendo en php.

al principio solo estaba buscando solo por el campo de la tabla (apellido)
lo cual lo hice de esta forma:
Código:
SELECT * 
FROM Users 
WHERE apellido like '%".$this->criteria."%

Ahora la cosa se complica cuando me pidieron que la busqueda hay que hacerla
buscando en el campo nombre y en el campo apellido , lo cual lo hice asi:
Código:
SELECT *
 FROM Users 
WHERE MATCH(nombre, apellido) 
AGAINST($this->criteria);
Pero el porblema esta en que para encontrar alguna coinsidencia
el usuario tendria que escribir el apellido completo porque si
el usuario busca por ej: el apellido "torres" con MATCH tendria que escribir "torres" pero si escribe "tor" no devuelve nada.

En cambio con "LIKE" funcciona como me gustaria , que al poner "torr"
que me traiga todas las posibles coincidencias con "torr" pero buscando
en los dos campos (nombre y apellido) no solo por apellido.

Existe alguna posibilidad de usar MATCH AGAINST pero con like?

Mil gracias amigos.
  #2 (permalink)  
Antiguo 19/01/2011, 14:36
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 2 meses
Puntos: 96
Respuesta: Buscando en multiples campos de una tabla

Saludos

Pensaria que solo es ajustar tu consulta de esta manera:

Código MySQL:
Ver original
  1. FROM Users
  2. WHERE apellido LIKE '%criterio%'
  3. OR nombre LIKE '%criterio%'
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #3 (permalink)  
Antiguo 19/01/2011, 15:00
Avatar de GXT2  
Fecha de Ingreso: junio-2009
Ubicación: Fort Lauderdale, FL
Mensajes: 152
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Buscando en multiples campos de una tabla

hoo gracias Nano_

nunca se me hubiera acorrido yo
estaba haciendo otras cosas ..

Etiquetas: campos, multiples, buscadores, tablas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:00.