Discussion:
Busqueda continua con SEEK
(demasiado antiguo para responder)
e***@hotmail.com
2013-10-22 04:54:40 UTC
Permalink
Hola Grupo

Tengo una tabla con mas de 4 millones de registros (para los que son de argentina, es la base de datos de los contribuyentes de la AFIP), y necesito hacer una búsqueda por apellido y nombres y por el tamaño no conviene usar el LOCATE pues se hace muy lerdo y hasta de traba, pues es lógico que use SEEK pero cuando pongo la búsqueda de un apellido por ejemplo "ANDRADA", necesito que me localice todos los ANDRADAS, y solamente me localiza el primero y allí termina. Como puedo hacer para que continue con el siguiente registro ?
Bueno amigos desde ya gracias
Saludos a todos
Esteban Micosii
Sker
2013-11-16 10:46:20 UTC
Permalink
Post by e***@hotmail.com
Hola Grupo
Tengo una tabla con mas de 4 millones de registros (para los que
son de argentina, es la base de datos de los contribuyentes de
la AFIP), y necesito hacer una búsqueda por apellido y nombres y
por el tamaño no conviene usar el LOCATE pues se hace muy lerdo
y hasta de traba, pues es lógico que use SEEK pero cuando pongo
la búsqueda de un apellido por ejemplo "ANDRADA", necesito que
me localice todos los ANDRADAS, y solamente me localiza el
primero y allí termina. Como puedo hacer para que continue con
el siguiente registro ? Bueno amigos desde ya gracias
Saludos a todos
Esteban Micosii
Creo que para lo que dices, lo mejor seria hacer una consulta SQL y
luego trabajar con ella.
a***@gmail.com
2014-04-05 12:26:13 UTC
Permalink
despues del seek lo que tienes que hacer es un SCAN WHILE.

ej.

ape='ANDRADA'
=seek(m.ape)
SCAN WHILE apellido=m.nom
&&procesar aqui
endscan


o sino, como alternativa, haces una tipica instruccion select y lo metes aun cursor.

select * from tabla where apellido='ANDRADA'

Loading...