Tema: Consulta sql
Ver Mensaje Individual
  #11 (permalink)  
Antiguo 26/01/2010, 06:35
Avatar de CHuLoSoY
CHuLoSoY
 
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 3 meses
Puntos: 29
Respuesta: Consulta sql

La mejor forma es Match ... against como te explicaron arriba. Primero crea un índice FULLTEXT para los campos NOMBRE Y APELLIDOS de mysql.
Luego ya podrás utilizar match (nombre,apellidos) against ($busqueda).
Buscará la cadena por separado en los dos campos, y pondrá una puntuación en un campo llamado Score, que podrás utilizar para ordenar los resultados por relevancia. Una especie de esto:
Código PHP:
Ver original
  1. SELECT * , MATCH(nombre,apellidos) AGAINST ('{$cadenaBusqueda}') as Score FROM tabla_basededatos WHERE MATCH(nombre,apellidos) AGAINST ('{$cadenaBusqueda}')  ORDER BY Score DESC

Suerte!
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.