como realizo este indice

06/05/2006 - 14:42 por Gaston P | Informe spam
tengo una tabla (Facturas) que tiene estos campos

ProveedorID (entero) no clave
LetraFactura (char)
NumeroSucursal (Integer)
NumeroFactura (integer)

tiene aprox 50000 registros

y debo por ejemplo consultar asi..

Select * from Facturas where ProveedorIDB3 and LetraFactura='A' and
NumeroSucursal=1 and NumeroFacturav5463

Preguntas similare

Leer las respuestas

#1 Maxi [MVP]
06/05/2006 - 18:39 | Informe spam
Hola, y cual es la consulta? como seria el indice mas performante? si
siempre buscas por esos campos para determinar una factura y los pones en un
indice a todos la cosa andaria rapido. De todas maneras yo siempre aconsejo
que apliques el Index Tunning Advisor desde el Query analizer, este te
analizara la consulta contra tu bdd y vera que recomendaciones hacerte.


Salu2
-
[Microsoft MVP] SQL Server
Orador para Culminis Latam
www.sqlgurus.org

MSN:

"Gaston P" escribió en el mensaje
news:
tengo una tabla (Facturas) que tiene estos campos

ProveedorID (entero) no clave
LetraFactura (char)
NumeroSucursal (Integer)
NumeroFactura (integer)

tiene aprox 50000 registros

y debo por ejemplo consultar asi..

Select * from Facturas where ProveedorIDB3 and LetraFactura='A' and
NumeroSucursal=1 and NumeroFacturav5463

Respuesta Responder a este mensaje
#2 Antonio Ortiz
06/05/2006 - 20:29 | Informe spam
En mi opinion, no es necesario indexar todos los campos, por ejemplo:

- Si existen 30000 diferentes datos en el campo NumeroFactura, es un buen
candidato a indexar
- Si consiguieras todos los registros que tengan NoFacturav5463, y te
resultara un subconjunto de 20 registros, realmente no valdria la pena
indexar los demas campos. (asumiendo que siempre utilizas el campo NoFactura
dentro de la clausula where)
- Si en algun momento desearas consultar todas las facturas de
ProveedorID=nnn, entonces si seria conveniente indexarlo

Para este caso, un unico indice en el campo apropiado podria determinar la
eficiencia de tu consulta. Recuerda que los indices, tienen efectos
secundarios como son: mayor tiempo de actualizacion, alta y eliminado;
ademas del espacio utilizado.


saludos,

Antonio Ortiz
asesor en sistemas
ant(a)aortiz.net
www.aortiz.net
www.progvisual.com



"Gaston P" escribió en el mensaje
news:
tengo una tabla (Facturas) que tiene estos campos

ProveedorID (entero) no clave
LetraFactura (char)
NumeroSucursal (Integer)
NumeroFactura (integer)

tiene aprox 50000 registros

y debo por ejemplo consultar asi..

Select * from Facturas where ProveedorIDB3 and LetraFactura='A' and
NumeroSucursal=1 and NumeroFacturav5463

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida