Busqueda de Articulos lenta

24/02/2005 - 14:41 por yasumadre | Informe spam
Hola:


Tengo una tabla de Articulos de 30,000 registros, cuando el usuario
desde una terminal, quiere acceder y buscar una palabra dentro de toda la
tabla de articulos tarda aproximadamente 20 a 25 segundos, lo hago de la
siguiente manera

select *, recno() from productos into Cursor Temporal;
where Upper(productos.codigo) like "%"+upper(alltrim(abuscar))+"%" or ;
Upper(productos.detalle) like "%"+upper(alltrim(abuscar))+"%" order by
detalle

alguna idea de como podria hacer mas rapido esto.


desde ya muchas gracias
 

Leer las respuestas

#1 Alex Feldstein
25/02/2005 - 00:58 | Informe spam
On Thu, 24 Feb 2005 10:41:20 -0300, "yasumadre"
wrote:

Tengo una tabla de Articulos de 30,000 registros, cuando el usuario
desde una terminal, quiere acceder y buscar una palabra dentro de toda la
tabla de articulos tarda aproximadamente 20 a 25 segundos, lo hago de la
siguiente manera

select *, recno() from productos into Cursor Temporal;
where Upper(productos.codigo) like "%"+upper(alltrim(abuscar))+"%" or ;
Upper(productos.detalle) like "%"+upper(alltrim(abuscar))+"%" order by
detalle

alguna idea de como podria hacer mas rapido esto.



Tu consulta no es optimizable. No es mucho lo que puedes hacer. Al
menos tener indices con TAGs por Upper(productos.codigo) y lo mismo en
detalle.

Por otro lado, para ganar un poco dale la variable abuscar ya con
Upper() y Alltrim() en lugar de calcularlo dentro de la sentencia.



Alex Feldstein
________________________________
Microsoft Visual FoxPro MVP
Please respond in the public groups so that everybody
can benefit from the exchange.
Favor de responder en los foros públicos asi todos se benefician.
(address munged with ROT-13)

Blog: http://www.bloglines.com/blog/AlexFeldstein
Website: http://feldstein.net

Preguntas similares