Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Order By Alenta mi resultado?

Estas en el tema de Order By Alenta mi resultado? en el foro de SQL Server en Foros del Web. Que tal , tengo unos querys de busqueda que me arrojan muchos resultados, por un lado se que debo optimizar esos querys, pero por otro ...
  #1 (permalink)  
Antiguo 29/04/2009, 16:24
 
Fecha de Ingreso: septiembre-2005
Mensajes: 1.289
Antigüedad: 18 años, 7 meses
Puntos: 3
Pregunta Order By Alenta mi resultado?

Que tal , tengo unos querys de busqueda que me arrojan muchos resultados, por un lado se que debo optimizar esos querys, pero por otro tambien llego a mis oidos que el ORDER BY alenta el resultado de mi consulta, si esto es cierto, hay algun modo de evitar usar un order by o usarlo sin q alente una busqueda? tal vez alguna herramienta del sql o algo, gracias de antemano!
__________________
Wow! No se que decir...
  #2 (permalink)  
Antiguo 29/04/2009, 21:06
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 10 meses
Puntos: 180
Respuesta: Order By Alenta mi resultado?

¿Indices?, los hay en tus tablas, no debes preocuparte
  #3 (permalink)  
Antiguo 30/04/2009, 14:08
 
Fecha de Ingreso: septiembre-2005
Mensajes: 1.289
Antigüedad: 18 años, 7 meses
Puntos: 3
Respuesta: Order By Alenta mi resultado?

Mmm creo q de nuevo me perdi con eso de indices, tendras una liga a un articulo maso sencillo con respecto a INDICES? estaba viendo uno pero como que no lo estoy entendiendo bien :(
__________________
Wow! No se que decir...
  #4 (permalink)  
Antiguo 02/05/2009, 01:38
 
Fecha de Ingreso: febrero-2005
Mensajes: 27
Antigüedad: 19 años, 3 meses
Puntos: 1
Respuesta: Order By Alenta mi resultado?

Cita:
Iniciado por zyon Ver Mensaje
Que tal , tengo unos querys de busqueda que me arrojan muchos resultados, por un lado se que debo optimizar esos querys, pero por otro tambien llego a mis oidos que el ORDER BY alenta el resultado de mi consulta, si esto es cierto, hay algun modo de evitar usar un order by o usarlo sin q alente una busqueda? tal vez alguna herramienta del sql o algo, gracias de antemano!
en efecto su tu tienes tres columnas por ejemplo

IDUSUARIOS | NOMBRE | PATERNO | MATERNO
y tienes

select * from usuarios

te arroja

1 | Juan | Leon | Leon
2 | Beto | Perez | Perez
3 | Raul | Dias | Dias

si pones

select * from usuarios order by paterno
te va poner

3 | Raul | Dias | Dias
1 | Juan | Leon | Leon
2 | Beto | Perez | Perez

la cantidad de resultados serán los mismos y tu indice va seguir igual solo vas a cambiar la vista

bueno eso entiendo yo, corrijanme si estoy mal
  #5 (permalink)  
Antiguo 03/05/2009, 18:34
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 10 meses
Puntos: 180
Respuesta: Order By Alenta mi resultado?

La consulta la puedes hacer directamente en tu AYUDA EN LINEA, misma que ya hemos publicado en este foro y bueno, el concepto de INDICES, ya se ha explicado con "bolitas y palitos".

Saludos
  #6 (permalink)  
Antiguo 05/05/2009, 09:06
 
Fecha de Ingreso: septiembre-2005
Mensajes: 1.289
Antigüedad: 18 años, 7 meses
Puntos: 3
Respuesta: Order By Alenta mi resultado?

Esta ocación si disculpen mi completa ignorancia, pero revisando los "Indices" no entiendo nada, habla sobre sus relaciones con las FK y que opciones de reorganización en las tablas, pero de verdad que esta oacion no comprendo como funcionan los indices y como se relacionan con el Order By ... Por eso de nuevo pido si alguien conoce una pagina con una explicacion sencilla o algun ejemplo por favor :(
__________________
Wow! No se que decir...
  #7 (permalink)  
Antiguo 05/05/2009, 09:27
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 10 meses
Puntos: 180
Respuesta: Order By Alenta mi resultado?

zyon

Palabras mas, palabras menos, esto explique de un INDICE.

Cuando tu vas a un edificio de 14 pisos, con 118 despachos y buscas al LIC GODINEZ y no hay recepcionista en la puerta, no vas a andar tocando de puerta en puerta en los 14 pisos y 118 puertas preguntando por el Lic. Godinez.

Para eso, hay un DIRECTORIO a la entrada, donde indica que despachos o que personas estan registrados en los 118 despachos.

Pues bien, cuando SQL Server (o cualquier otro motor) hace busquedas en las tablas, lo primero que consulta son los INDICES creados para dicha tabla, de no haberlos, hara exactamente lo que tu harias, si no hay un directorio (TABLE SCAN), buscara de registro en registro, la informacion que se busca y si son MILLONES, pues ya sabras cuanto se tardara, aunque sea muy eficiente.

Para el ejemplo que nos compete, si se sabe que unas de mis columnas candidatas es la columna "paterno", entonces debere convertirla en INDICE.

¿Como se que es una candidata?, Comunmente, son las utilizadas en el WHERE o bien, como en este caso en el ORDER BY

select * from usuarios order by paterno
te va poner

3 | Raul | Dias | Dias
1 | Juan | Leon | Leon
2 | Beto | Perez | Perez

Ahora, no confundir, nada tienen que ver los INDICES para mejorar las consultas, al concepto que tu dices de FK (foreing key).

Despues de esto, no estaria mal, que le dedicaras un poco a la lectura de tu AYUDA EN LINEA, donde encontraras mucho mejor explicado este concepto.

Saludos
  #8 (permalink)  
Antiguo 06/05/2009, 13:59
Avatar de Gabo77  
Fecha de Ingreso: noviembre-2006
Mensajes: 381
Antigüedad: 17 años, 5 meses
Puntos: 6
Respuesta: Order By Alenta mi resultado?

Y si Godinez salió a comer?? jeje muy buena la metafora amigo iislas!.

Saludos!
__________________
Hicimos un pacto con Dios... El no desarrolla Sistemas y nosotros no hacemos milagros....
  #9 (permalink)  
Antiguo 07/05/2009, 13:26
 
Fecha de Ingreso: septiembre-2005
Mensajes: 1.289
Antigüedad: 18 años, 7 meses
Puntos: 3
Respuesta: Order By Alenta mi resultado?

Hey todavia no me queda claro al 100 por ciento e tema de los indices pero busque y encontre como crear dichos indices, seleccione los campos que mas uso en las consultas, modifique mis consultas en lugar de hacer select * from tabla a, tabla b where ... utilice los INNER JOIN ( de los cuales tampoco habia usado antes ) y de 3 minutos q me tardaba una consulta se redujo a un segundo jeje, Gracias por la paciencia y bueno, seguire preguntando al respecto por que tengo una q otra duda aun, Gracias de nuevo!!
__________________
Wow! No se que decir...
  #10 (permalink)  
Antiguo 07/05/2009, 16:47
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 10 meses
Puntos: 180
Respuesta: Order By Alenta mi resultado?

Antes de preguntar, consulte su ayuda en linea, si lo que viene ahi, no le satisface, entonces si, venga y pregunte.

Saludos

(Gabo77, Lastima, despues de tanta busqueda, se dara cuenta de que Godinez, ni salio, solo que no habita ahi, jajajajaja)
  #11 (permalink)  
Antiguo 07/05/2009, 16:51
 
Fecha de Ingreso: septiembre-2005
Mensajes: 1.289
Antigüedad: 18 años, 7 meses
Puntos: 3
Respuesta: Order By Alenta mi resultado?

Si es lo que hago, busco información, pero varios detalles no los comprendo y solo me hao bolas ... Gracias por tenerme paciencia jeje
__________________
Wow! No se que decir...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:59.