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

Sacar el segundo valor más alto

Estas en el tema de Sacar el segundo valor más alto en el foro de SQL Server en Foros del Web. Hola.... A alguien se le ocurre como sacar el valor que sigue del que es màs alto??? Por ejemplo, en un campo tengo los siguentes ...
  #1 (permalink)  
Antiguo 12/12/2006, 09:13
Avatar de Sir Matrix  
Fecha de Ingreso: octubre-2000
Ubicación: Dentro de mi cabeza. ono?
Mensajes: 1.264
Antigüedad: 24 años, 1 mes
Puntos: 3
Exclamación Sacar el segundo valor más alto

Hola....

A alguien se le ocurre como sacar el valor que sigue del que es màs alto???

Por ejemplo, en un campo tengo los siguentes valores:

Precio clave
10 1
20 2
50 3
800 4
34 5



y quiero que la consulta me devuelva el 50.


Saludos y gracias de antemano
__________________
|||| ))>_<(( ||||
www.webmagic.cl <-- esta pagina está mala, no la busquen
  #2 (permalink)  
Antiguo 12/12/2006, 10:10
Avatar de Gabo77  
Fecha de Ingreso: noviembre-2006
Mensajes: 381
Antigüedad: 18 años
Puntos: 6
Re: Sacar el segundo valor más alto

no se si esto funcione.... pero creo que sería así

Código:
SELECT
        CLAVE, MAX(PRECIO)
FROM
        TABLA A
WHERE
        NOT EXISTS(SELECT 1 FROM TABLA WHERE CLAVE = A.CLAVE GROUP BY CLAVE HAVING MAX(PRECIO) <> A.PRECIO)
GROUP BY
         CLAVE
Saludos!
  #3 (permalink)  
Antiguo 13/12/2006, 17:00
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años, 7 meses
Puntos: 25
Re: Sacar el segundo valor más alto

Otra alternativa es...

SELECT TOP 1 * FROM (
SELECT TOP 2 * FROM tabla ORDER BY clave DESC
) temp
ORDER BY clave ASC
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #4 (permalink)  
Antiguo 17/12/2006, 22:53
Avatar de julwo  
Fecha de Ingreso: mayo-2004
Ubicación: santiago, Rep Dom
Mensajes: 252
Antigüedad: 20 años, 6 meses
Puntos: 0
Re: Sacar el segundo valor más alto

select top 2 max(precio) as precio from tabla order by precio desc
__________________
Cuando las cosa son Buenas, SON BUENAS! no importan las R@tas que orinen en el camino! Me SiGUe!!
  #5 (permalink)  
Antiguo 18/12/2006, 07:57
Avatar de Gabo77  
Fecha de Ingreso: noviembre-2006
Mensajes: 381
Antigüedad: 18 años
Puntos: 6
Re: Sacar el segundo valor más alto

eso no funciona..... Select MAX(precio) te traera el mayor, por lo que solo será 1 registro, el mayor de la tabla, ó me equivoco?, igual no lo he probado!
  #6 (permalink)  
Antiguo 19/12/2006, 21:28
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años, 7 meses
Puntos: 25
Re: Sacar el segundo valor más alto

Cita:
Iniciado por Gabo77 Ver Mensaje
eso no funciona..... Select MAX(precio) te traera el mayor, por lo que solo será 1 registro, el mayor de la tabla, ó me equivoco?, igual no lo he probado!
Efectivamente, no funciona.
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 22:26.