No tópico passado vimos como podem ser usados os operadores AND, OR e NOT. Agora vamos falar de outros três, também
muito importantes, que são o BETWEEN, o IS e o IN.
Fazendo um resumo rápido deles, seus papéis são:
- BETWEEN – Especificar um intervalo a ser
procurado
- IS – Tratar campos cujos dados são nulos
- IN – Verifica se uma condição ou um valor fazem parte de determinado grupo de valores especificados.
Vamos começar demonstrando o operador BETWEEN, mas antes, só para relembrarmos a estrutura
e o conteúdo da nossa tabela de clientes, vamos fazer um select em alguns campos:
SELECT nome AS Nome, email AS Email, idade AS Idade FROM cliente;
Muito bem. Agora vamos utilizar o operador BETWEEN para especificar que queremos
resultados apenas com idades entre 30 a 45 anos.
SELECT nome AS Nome, email AS Email, idade AS Idade FROM cliente WHERE idade BETWEEN 30 AND 45;
Vejam que o SGBD só nos retornou os dados de clientes cujas idades se encontravam no
intervalo que especificamos.
Antes de falar sobre o operador IS é preciso fazer alguns esclarecimentos. Devemos
entender o conceito de NULL.
O que é valor NULL?
Quando um SGBD não possui valor algum armazenado em algum campo, ele insere um valor definido como NULL, ou seja, é a ausência total de valor.
O MySQL especifica isso claramente em suas consultas. Vou fazer uma inserção em nossa tabela de clientes e,
propositalmente não vou inserir dados em alguns campos, como "endereço" e "idade".
INSERT INTO (telefone, nome, email, cpf) VALUES ("1234-1234", "Rodrigo",
"rodrigo@emailinexistente.com", "389476625-11");
Agora vou dar um SELECT apenas nesse cliente:
SELECT * FROM cliente WHERE nome LIKE 'Rodrigo';
Só como observação, o Oracle também exibe o valor NULL para especificar campos com ausência de dados, mas o SQL Server
não exibe nada nesses campos, então se você estiver fazendo uso desse SGBD da Microsoft, fique sempre atento e não
confunda um valor NULL com uma string vazia “”. A string vazia está lá! Ela existe! O valor NULL representa ausência total de informação.
Muito bem, agora que já sabemos o que é um campo NULL, vamos a um exemplo prático. Imaginem que queiramos exibir dados
como "nome", "email" e "idade" de todos os usuários cujas idades cadastradas no banco NÃO sejam nulas. Nosso comando
ficará assim:
SELECT nome AS Nome, email AS Email, idade AS Idade FROM cliente WHERE idade IS NOT NULL;
Percebam que os dados do cliente "Rodrigo", cuja idade está cadastrada como nula, não foram exibidos. Agora vou
inverter o comando, para que SOMENTE as idades nulas sejam exibidas.
SELECT nome AS Nome, email AS Email, idade AS Idade FROM cliente WHERE idade IS NULL;
Notem que agora apenas os dados do cliente Rodrigo, cuja idade é nula no banco, foram
exibidos.
Apenas para citar outro exemplo importante desse operador, mas que não veremos agora para não interromper a ordem dos
assuntos, nós poderíamos querer fazer a média de todas as idades efetivamente cadastradas no sistema, desconsiderando os usuários cujos valores desse campo sejam nulos. Isso seria facilmente
realizado com a verificação de “IS NOT NULL”, conforme utilizamos aqui. Mas voltaremos a falar dela no futuro.
Para encerrar, vou demonstrar o operador IN em ação. Como foi dito no início deste
tutorial, ele nos permite efetuar uma busca dentre alguns elementos pré-determinados. Como nossa base de dados também
possui a tabela "filme", vamos inserir alguns dados nela para que não usemos sempre a tabela cliente nas
demonstrações.
INSERT INTO filme VALUES (“Drama”, “Cidade de Deus”, 1);
INSERT INTO filme VALUES (“Drama”, “O Pianista”, 2);
INSERT INTO filme VALUES (“Drama”, “Sangue Negro”, 3);
INSERT INTO filme VALUES (“Infantil”, “Shrek”, 4);
INSERT INTO filme VALUES (“Aventura”, “Quase Famosos”, 5);
INSERT INTO filme VALUES (“Aventura”, “Avatar”, 6);
INSERT INTO filme VALUES (“Terror”, “Sexta-Feira 13”, 7);
INSERT INTO filme VALUES (“Terror”, “Brinquedo Assassino”, 8);
Nossa tabela de filmes agora possui os seguintes dados:
Agora vamos imaginar que queiramos efetuar uma consulta nos filmes do gênero "Drama". Podemos fazer isso com o
operador IN da seguinte forma:
SELECT * FROM filme WHERE genero IN (‘Drama’);
Poderíamos ainda especificar mais de um gênero, apenas separando-os por vírgulas dentro
dos parênteses, dessa forma:
SELECT * FROM filme WHERE genero IN ('Drama', 'Terror');
Agora foram exibidos tanto os filmes do gênero Drama quanto Terror. Bem, mas aí você, que está bem atento a todos os
tópicos pode pensar que é desnecessário utilizar o operador IN, pois poderíamos obter o mesmo resultado com o LIKE e o
OR, da seguinte maneira:
SELECT * FROM filme WHERE genero LIKE ‘Drama’ OR genero LIKE
‘Terror’;
Vamos executar:
Realmente é fácil notar que as tuplas retornadas pelo banco são as mesmas. Para essa consulta, considerada simples, o IN pôde ser substituído pela combinação LIKE + OR, mas existirão situações em que isso não será possível, quando as consultas não forem tão simples e estiverem envolvendo mais de uma tabela. Chegaremos lá! Por enquanto apenas acredite que o operador IN é muito importante.
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?
Space Invaders

O título Space Invaders, lançado em 1980, fez tanto sucesso em todo o mundo que as pessoas compravam o console Atari apenas para poderem jogá-lo em casa. Saiba mais sobre este incrível título clicando aqui.
Mouse

O mouse foi criado em 9 de dezembro de 1968, por um americano chamado Douglas Engelbart, que o batizou de "XY Position Indicator for a Display System". Conheça a história do mouse clicando aqui.
Música tema do Blanka

Até a primeira metade dos anos 90 era bastante comum que as trilhas sonoras dos games fossem criadas por mulheres e a responsável pelas músicas do clássico Street Fighter 2 foi Yoko Shimomura. Segundo ela, o ritmo "Tararirarin" da música tema do personagem Blanka, do Brasil, veio à sua cabeça enquanto ela estava no trem a caminho da Capcom.
PC com barulho?

Excesso de barulho dentro do seu gabinete, principalmente logo que você o liga, pode ser sintoma de problemas nas ventoinhas, que podem precisar ser limpas ou trocadas. Entre em contato com um técnico de sua confiança e verifique isso o quanto antes.
Tetris

Desde o seu lançamento, em 1985, o fantástico jogo Tetris vende pelo menos 70 milhões de unidades por ano em todo o mundo! Os dados são oficiais e fornecidos pela THQ, uma das distribuidoras do título.
ENIAC

O ENIAC, primeiro computador valvulado do mundo, possuía 17.000 válvulas, 500.000 pontos de solda, 30 toneladas de peso e ocupava uma área de 180 metros quadrados. Clique aqui e conheça mais sobre a história dos computadores.
Mortal Kombat - O Filme

O filme Mortal Kombat, inspirado no jogo de mesmo nome, faturou 23 milhões de dólares apenas no fim de semana de estreia nos EUA. Ainda sobre este título de sucesso, outra cifra que impressiona é o faturamento ao longo do primeiro ano: 1 bilhão de dólares no mundo todo.
Street Fighter 2

Street Fighter 2, lançado para o Super Nintendo no início dos anos 90, foi o principal responsável pelo aumento nas vendas deste console. Graças ao sucesso do título nos Arcades e à perfeita adaptação ao console, muitos consumidores adquiriram o SNES para jogarem o título em casa. Saiba mais.
Space Invaders

A partida mais longa do clássico Space Invaders durou incríveis 38 horas e 32 minutos e esta façanha foi conseguida por um jogador de apenas 12 anos! O jogo, claro, podia ser pausado para alimentação e descanso, mas ainda assim o recorde, estabelecido no dia 02/09/1980, ainda não foi quebrado. Saiba mais.
Asteroids

O título Asteroids, do Atari, possui recorde de pontuação há 30 anos. Em 1982 um americano chamado Scott Safran atingiu a marca de 41.336.440. Atualmente ele faz parte de um minúsculo grupo de jogadores que conseguiram manter seus recordes por mais de 30 anos.
Tomb Raider - O Filme

Considerando todas as adaptações de jogos de videogame para o cinema, a mais bem sucedida foi Lara Croft: Tomb Raider, lançado em 2001 e que faturou 274 milhões de dólares. Ele foi dirigido por Simon West e estrelado pela bela Angelina Jolie.










