O parâmetro HAVING permite selecionar resultados, assim como o parâmetro WHERE, mas ele atua sobre os dados agrupados com o GROUP BY. É um comando mais fácil de demonstrar do que
de explicar. Sua sintaxe é muito simples. Vamos repetir a mesma consulta do último tópico, onde utilizamos o GROUP BY,
vejam:
SELECT count(cpf) AS 'Qtde de Filmes Alugados', cpf AS CPF FROM aluga GROUP BY (cpf);
Executando, teremos:
Agora vamos imaginar que nos interessasse somente os clientes que alugaram mais de 2 filmes. Não poderíamos usar o
WHERE, já que a contagem é feita com o GROUP BY e isso geraria um erro de sintaxe, mas podemos usar o HAVING, da
seguinte forma:
SELECT count(cpf) AS 'Qtde de Filmes Alugados', cpf AS CPF FROM aluga GROUP BY (cpf) HAVING (count(cpf)) > 2;
O resultado dessa consulta seria:
Vejam que agora só foram exibidos os resultados maiores que 2, ou seja, clientes que alugaram mais de 2 filmes.
Resumindo, o HAVING tem o mesmo papel do WHERE, que é permitir uma triagem nos dados retornados, mas ele atua em conjunto com o GROUP BY.
HARDWARE
Entendendo o seu computador
O que há dentro do meu computador?
Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.
Você Sabia?
Galaxy Game
As primeiras máquinas de fliperama do mundo a utilizarem moedas, chamadas de Galaxy Game, custavam mais de 20 mil dólares para serem produzidas. Saiba mais sobre elas aqui.
Mega Man
A primeira versão do clássico Mega Man, para Nintendo 8 bits, tem seu recorde de pontos estabelecido em 03/11/2006, por David Archey, que cravou 2.396.700 pontos, terminando o jogo.