SQL - Seleccionar los 3 campos más grandes(optimización)

 
Vista:

Seleccionar los 3 campos más grandes(optimización)

Publicado por Joaquín (2 intervenciones) el 28/07/2003 23:33:27
Tengo una base de datos con un campo numérico, y en determinadas circunstancias quiero mostrar los TRES registros cuyo campo numérico es más alto.

La forma "cutre" y rápida que se me ocurre, utilizando VBScript, es seleccionarlos todos ordenandolos de forma descendente, e irlos listando uno por uno hasta haber mostrado los 3 más grandes.

Pero no me gusta esa forma de hacer las cosas "a lo microsoft", sin optimizar, y me gustaría saber si hay alguna forma de seleccionar sólo esos tres registros más grandes directmente en la sentencia SQL.

Venga, gracias a todos y un saludo.
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:Seleccionar los 3 campos más grandes(optimizaci

Publicado por Isaías Islas (5072 intervenciones) el 29/07/2003 17:30:51
SET ROWCOUNT 3

SELECT MyColNumero
FROM MyTabla
ORDER BY MyColNumero DESC
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

¡Gracias!

Publicado por Joaquín (2 intervenciones) el 29/07/2003 18:23:23
Lo pondré en práctica, 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

RE:¡Gracias!

Publicado por Isaías Islas (5072 intervenciones) el 29/07/2003 23:19:19
Agregue:

SET ROWCOUNT 0

Al final de todas las instrucciones
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