|
|
Postada em 25/07/2007 17:50 hs
Pessoal tenho uma coluna em uma tabela no SQl server que tem varios valores, tipo: 5,10,20,30,50
Como eu monto uma sql sendo que se eu passar um valor por exemplo 7 ela me retorna o maior e menor numero mais proximo, nesse caso o 5 e o 10 ??
ja tentei de varias formas mas nao consegui.
|
|
|
|
|
|
|
|
Postada em 25/07/2007 19:15 hs
Vou pensar em outra SQL mas tenta esta: SELECT TOP 1 (SELECT TOP 1 campo FROM TESTE WHERE campo <= 7 ORDER BY campo DESC) AS MENOR , (SELECT TOP 1 campo FROM TESTE WHERE campo >= 7 ORDER BY campo) AS MAIOR FROM TESTE Feio que dói !!!  Mas acho que atende o seu caso... At+
|
|
|
|
Cardoso G
|
PATOS DE MINAS MG - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 26/07/2007 08:09 hs
SELECT MAX(campo) as Menor FROM TESTE WHERE campo <= 7 SELECT MINX(campo) as Maior FROM TESTE WHERE campo >= 7
|
|
|
|
Cardoso G
|
PATOS DE MINAS MG - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 26/07/2007 08:09 hs
SELECT MAX(campo) as Menor FROM TESTE WHERE campo <= 7 SELECT MIN(campo) as Maior FROM TESTE WHERE campo >= 7
|
|
|
|
|
|
Postada em 26/07/2007 08:43 hs
achei um jeito legal faz assim SELECT MAX(campo) as Menor FROM TESTE WHERE campo <= 7 union SELECT MIN(campo) as Maior FROM TESTE WHERE campo >= 7
|
|
|
|
|
|
Postada em 26/07/2007 08:49 hs
defende, achei uma solucao perfeita pra vc, veja, ele traz um registro so com as 2 colunas. SELECT MAX(a.campo) as Menor,min(b.campo) MaiorFROM teste a,teste b where a.campo < 7 and b.campo > 7
|
|
|
|