Visual Basic.NET - consulta

 
Vista:

consulta

Publicado por Akkumma (62 intervenciones) el 28/09/2004 15:57:56
hola,
necesito hacer una consulta a una tabla que tiene 3 millones de registros, pero al realizarla me sale error qe el tiempo de espera ha terminado, la realice por medio de un procedimiento almacenado, y cuando hago la busqueda con un campo exacto la consulta es super rapida pero cuando utilizo el like para buscar por parte del campo , sale el error mensionado anteriormente,
cualquier ayuda muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:consulta

Publicado por Edgar (1501 intervenciones) el 28/09/2004 17:01:24
Hola

De verdad que tienes una tabla bastante grande, tendrás que buscar alguna manera de optimizar tu consulta, o incrementar el valor del timeout que es el tiempo de espera para que ocurra un error, otra opción es que hagas la búsqueda por partes, buscando de 100.000 en 100.000 registros por ejemplo, de tal manera de no esperar mucho tiempo para tener resultados

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 153
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

RE:consulta

Publicado por Yamil Bracho (631 intervenciones) el 28/09/2004 18:48:54
Un manera de optimizar busquedas es crear un indice por el campo en que estas basando tu consulta
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:consulta

Publicado por akkumma (62 intervenciones) el 28/09/2004 22:50:30
hola,
ya mejore la busqueda:
1. indecé la tabla por el campo, y hago la busqueda con un procedimiento almacenado, y al usar el LIKE, solo lo uso al final del dato.
por ejemplo: buscaba super
le daba en la busqueda %variable%
ahora lo hago variable%
y eso me mejoro en un 90 por ciento el tiempo.
gracias,
saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 153
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

RE:consulta

Publicado por Yamil Bracho (631 intervenciones) el 29/09/2004 15:22:18
Como regla general los campos de un WHERE o campos de un join deberian ser indices...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar