Busqueda con Locate o Lookup
Hola a todos, me surgio un proble,a y es el siguiente:
Tengo un Query con una tabla en la cual necesito realizar una busqueda, el tema es que necesito realizar la busqueda por un fragmento del campo, para que me entiendadn necesito que me encuentre el primer registro que contenga la cadena 'ASA', por lo cual me tiene que devolver el registro que tenga 'PASA' o 'ASADO', el problema es que lo hago con Query1.locate pero me busca por cadena completa no por fragmento, y no encuentro la funcion que lo haga. (Obviamente lo puedo hacer recorriendo registro por registro con un POS() pero al tener muchos registros se torna lenta la busqueda) Salu2, Noshy |
Buenas, no se si esto te servira, con el siguiente ejemplo hace o que pides pero escribiendo en un edit, por la palabra que quieres que se realice el locate... Espero que te sirva, sino es asi dime como puedo ayudarte. ;)
|
Nop
Gracias por tu respuesta, pero no funciona, porque sigue filtrando por el campo entero no por un fragmento, yo en el campo tengo direcciones, y necesito buscar por una palabra de la direccion no por la direccion completa o sea por in LIKE de SQL, pero necesito hacerlo en memoria para que sea mas rapido. No se si el LOCATE tieme parametros como el % de SQL.
|
Disculpa, pero a mi me funcionaba ya que lopartialkey busca que coincida una parte no todo, asi si buscamos 'A', nos mostrara lo campos Antonio Andres... vamos si no me equivoco... tal vez no te entendi lo que necesitabas. Disculpa otra vez. Si esto no te sirve por que no haces una query al campo¿? Select * from Empleado Where NOMBRE LIKE '%An%' Order by NOMBRE
|
Cita:
|
o sea que la cadena que buscas se encuentre en cualquier parte del campo y no solamente al comienzo
|
pues para eso, puedes filtrar la tabla, algo asi como
Dataset.filter := 'Nombredelcampo like %' + buscar.text + '%'; |
No se si lo habras solucionado, pero creo que este link te servira ;) :
http://www.clubdelphi.com/foros/showthread.php?t=31663 |
La franja horaria es GMT +2. Ahora son las 16:26:32. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi