Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal,
Deu um branco. Preciso buscar em que registro da minha tabela um valor se encaixa.
Tenho na tabela 4 registros.
1 valor_minimo = 800
2 valor_minimo = 850
3 valor_minimo = 990
4 valor_minimo = 1200
Meu valor é 889. Tem como buscar em apenas um sql, que ele se encaixa no registro 2 (Maior que 850 e menor que 990)?
Obrigada
between entre o que?
tenho um valor em cada registro da tabela , e um valor para comparar.
Exemplo:
Registros na tabela
Junior, pontuação mínima 800
Sênior, pontuação mínima 850
Master, pontuação mínima 990
Preciso saber o que é o cara que tem 889 pontos.
Perdão, entendi mal.
todos os maiores que 889
select *
from tabela
where valor_minimo > 889
O mínimo disto
select min(valor_minimo)
from tabela
where valor_minimo > 889
Este registro
select *
from tabela
where valor_minimo = (select min(valor_minimo)
from tabela
where valor_minimo > 889)
Ajudou ?
Humm.. Está tirando o nó da minha cabeça.
Mas assim vai trazer o 990, certo? Só que 889 não atingiu 990 ainda. Então a faixa dele é Sênior (850).
Eu poderia buscar o max < que o resultado do seu exemplo, mas vai ficar confuso.. E não sei se vai funcionar em todas as situações, vou testar amanhã. Será que é isso?
Muito obrigada!
select *
from tabela
where valor_minimo = (select min(valor_minimo)
from tabela
where valor_minimo <= 889)>
Pessoal,
Deu um branco. Preciso buscar em que registro da minha tabela um valor se encaixa.
Tenho na tabela 4 registros.
1 valor_minimo = 800
2 valor_minimo = 850
3 valor_minimo = 990
4 valor_minimo = 1200
Meu valor é 889. Tem como buscar em apenas um sql, que ele se encaixa no registro 2 (Maior que 850 e menor que 990)?
Obrigada
Bom seu insert seria normal na sua tabela pois id é unico e tals ,não teria como colocar no lugar ...
Até pq não sei como esta a estrutura da sua tabela...
Mas na consulta é só você colocar
Select * from ###(nome da tabela) where (condição) order by valor minimo
Se tudo der certo seu retorno seria esse ...
1 valor_minimo = 800
2 valor_minimo = 850
3 valor_minimo = 889
4 valor_minimo = 990
5 valor_minimo = 1200
Espero que tenha ajudado...
Abraço!
Obrigada Welisson. A dúvida era um pouco mais específica, mas está resolvido.
Motta, só troquei o MIN pelo MAX e ficou perfeito! Salvou meu dia.
select *
from tabela
where valor_minimo = (select max(valor_minimo)
from tabela
where valor_minimo <= 889)
Obrigada!
Between.aspx)