Busqueda por Coincidencias

Foro destinado a solucionar problemas con el lenguaje de programacion Visual Fox.

Busqueda por Coincidencias

Notapor Osmin » Jue Abr 24, 2008 5:36 pm

Resulta que tengo una consulta con un text y una grid lo que quiero es que haga una busqueda en la tabla de todos los datos coincidentes por ejemplo: si escribo en el text
JULIO RODRIGUEZ debe de filtrarme todos los nombres que comienzan con JULIO y todos los demas nombres que se apellidan RODRIGUEZ.
aplico este codigo:
select * from tabla where UPPER(CAMPO) LIKE ("%"+UPPER(THISFORM.TXT1.VALUE)+"%" )
este codigo me filtra todos los JULIO solo cuando escribo el primer nombre pero al escribir el nombre completo solo me muestra el dato exacto o sea JULIO RODRIGUEZ
Lo que quiero es que si escribo un nombre completo o sea JULIO RODRIGUEZ u otro nombre quiero que me filtre:
- Todos los nombres que comienzan con JULIO (aunque termine con apellido diferente)
-Todos los que se apellidan RODRIGUEZ (aunque su primer nombre sea diferente)
Y que el resultado me lo muestre en la GRID
Esto quiero que lo haga con cualquier nombre que escriba.
Osmin
Novato
Novato
 
Mensajes: 3
Registrado: Jue Abr 24, 2008 5:31 pm


Re: Busqueda por Coincidencias

Notapor ivancp » Jue Abr 24, 2008 5:57 pm

A todas luces con tu consulta no lo vas a lograr ya que lo que estas buscando es producto de una expresion compleja.

Lo que puedes hacer es dividir la cadena de consulta en palabras para lograr asi una consulta como esta:

Código: Seleccionar todo
  1. LIKE "%palabra1%palabra2%palabraN%"



Otra opcion es que utilices la clase Full-text Search (Busqueda de texto completo) que puedes descargar de:
http://www.foxweb.com/fwFullText/
Imagen @latindev | Mi Blog
Por favor lee las reglas del foro
Avatar de Usuario
ivancp
Colaborador
Colaborador
 
Mensajes: 680
Registrado: Jue Sep 06, 2007 12:58 pm



    

Volver a Visual Fox

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados