Mais um exercício de SQL! Como você fez esse?
Antes de resolver qualquer problema de SQL do URI (agora BEECROWD), recomendamos seguir os seguintes passos:
- Ler todo enunciado do problema.
- Ler os tópicos do fórum em caso de dúvidas
- Preparar o esquema, conforme fornecido no problema. Obs.: muitas vezes o pessoal coloca o código de criação do esquema no fórum, então é só copiar!
Plataforma: URI (BEECROWD)
Problema: 2604
Solução:
Esse exercício eu achei bem fácil!
A gente sabe que a solução sempre passa pelo uso do select com cláusulas adequadas. Nesse caso, era necessário selecionar as colunas id e name da tabela products. Mas fazendo isso receberíamos todos os registros com os resultados dessas duas colunas. A restrição aqui vinha usando a cláusula where, que funciona semelhante a um condicional em linguagens de programação imperativas.
A condição da cláusula where poderia ser feita de várias formas, por exemplo, usando operadores relacionais (maior ou igual, menor ou igual etc). Eu optei por resolver usando o BETWEEN (entre), que é usado na forma: BETWEEN X and Y. Ou seja, valor entre X e Y. No caso desse exercício, era justamente esse intervalo que NÃO deveria ser retornado. Então neguei o resultado colocando NOT antes do BETWEEN, assim pego os valores que não estão entre 10 e 100. Fácil, não é mesmo?
O código que submeti na plataforma ficou assim:
select id, name from products where price NOT BETWEEN 10 and 100;