Agora vou falar sobre um complemento importantíssimo do comando SELECT, que é o WHERE, que
nos permite consultas específicas. Este parâmetro permite que se especifique um dado para
comparação com algo que pode estar no banco, ou seja, um dado de entrada para direcionar nossa busca.
Para que eu possa demonstrar as funcionalidades do parâmetro WHERE, farei a inserção de
mais alguns dados fictícios em nossa tabela de clientes.
INSERT INTO cliente VALUES("1234-1234", "Ricardo", "Rua Episcopal, 3900 - Centro",
"ricardo@emailinexistente.com", 32, "123321123-33");
INSERT INTO cliente VALUES("4567-4567", "Roberto", "Rua XV de Novembro, 25 - Centro", "roberto@emailinexistente.com",
42, "756398336-20");
INSERT INTO cliente VALUES("4444-3333", "Richard", "Rua Bahia, 215 - Pacaembu", "richard@emailinexistente.com", 18,
"645332378-11");
Com esses dados já é possível demonstrar um pouco do que se pode fazer com o comando WHERE.
Para que fique claro, vamos começar com um SELECT exibindo os dados de nossa tabela, mas apenas nos campos nome, idade e
email.
SELECT nome AS Nome, idade AS idade, email AS Email FROM cliente;
A imagem acima mostra o retorno dos dados da nossa consulta. Vamos imaginar que quiséssemos exibir apenas os dados das
pessoas que possuam idade maior do que 30 anos. Aqui o parâmetro WHERE entrará em ação, da seguinte forma:
SELECT nome AS Nome, idade AS Idade, email AS Email FROM cliente WHERE idade > 30;
Vejamos o retorno disso:
Vejam que o SGBD retornou apenas as tuplas que continham idade maior do que 30 anos. Se quiséssemos incluir
TAMBÉM as pessoas com idade igual a 30 anos, nosso código ficaria assim:
SELECT nome AS Nome, idade AS Idade, email AS Email FROM cliente WHERE idade >= 30;
Vejam que eu incluí o sinal de igual e os dados retornados já incluem os clientes com
idade igual a 30 anos.
Vamos nos aprofundar um pouco mais nas consultas imaginando uma situação em que se quisesse saber a idade e o email do
cliente cujo nome é "Daniel". Agora nossa consulta ficaria dessa forma:
SELECT nome AS Nome, idade AS Idade, email AS Email FROM cliente WHERE nome like ‘Daniel’;
Vejamos esse retorno:
Agora o SGBD retornou apenas o cliente cadastrado com o nome de "Daniel". Vale destacar que no exemplo da idade eu
comparei esse campo utilizando o sinal de igual (=), mas para comparar a string eu
utilizei o parâmetro like. Strings devem ser sempre
comparadas utilizando o like e colocando-se o dado de entrada entre aspas simples.
Vamos aprofundar mais um pouco. Agora nós não sabemos o nome completo do cliente que queremos procurar, mas precisamos
dos mesmos dados do exemplo acima para clientes cujo nome comece com a letra R. Agora
nosso comando ficará assim:
SELECT nome AS Nome, idade AS Idade, email AS Email FROM cliente WHERE nome like 'R%';
Vejam que eu utilizei o sinal de porcentagem, que em linguagem SQL é um caractere coringa, ou seja, ele representa qualquer coisa. A interpretação que o SGBD faz do
comando utilizado no exemplo acima é:
Exiba o nome, a idade e o email da tabela cliente onde os nomes comecem com a letra R e sejam
seguidos por quaisquer outros caracteres.
Por isso a nossa consulta só retornou nomes iniciados por R.
Poderíamos usar o coringa de forma invertida. Vamos imaginar que precisássemos resgatar os dados de um cliente cujo
nome termine com a sequência de caracteres “berto”, mas não soubéssemos o começo. Nossa
busca ficaria:
SELECT nome AS Nome, idade AS Idade, email AS Email FROM cliente WHERE nome like '%berto';
O sistema procurou, dentre todos os nomes cadastrados na tabela "cliente", algum que possuísse a sequência "berto"
cadastrada e fez o retorno.
Para encerrar a explicação sobre esse poderoso caractere coringa, vamos agora imaginar que temos um trecho qualquer do
nome a ser procurado, mas sequer sabemos se ele se encontra no início, no meio ou no fim do nome. Esse trecho é "ard".
Nosso comando ficará da seguinte forma:
SELECT nome AS Nome, idade AS Idade, email AS Email FROM cliente WHERE nome like '%ard%';
Notem que o sistema exibiu todos os nomes que continham a sequência "ard", independente
da sua localização na string. Isso foi possível graças a presença do caractere coringa antes e
depois do trecho procurado.
Bem, no tópico seguinte falarei sobre como especificar ainda mais as consultas através de operadores lógicos.
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?
Cuidados com o notebook
Utilizar seu notebook em camas, sofás ou qualquer superfície macia pode obstruir as entradas e saídas de ar, elevando a temperatura e provocando danos a diversos componentes. Utilize-o sempre sobre uma superfície rígida. Saiba mais aqui.
Máquina de Pascal
A Máquina de Pascal, criada em 1642 pelo filósofo, físico e matemático francês Blaise Pascal, é reconhecida como o primeiro computador do mundo e ele foi criado com o objetivo de calcular impostos. Saiba mais.
Final Fantasy X
O jogo Final Fantasy X para o Sony Playstation 2 vendeu, apenas no dia do seu lançamento, 1.455.732 cópias, estabelecendo um recorde de vendagem para as primeiras 24 horas de um game. Méritos da SquareSoft, que desenvolveu um excelente produto!
Duck Hunt
Ao completar o nível 99 do jogo Duck Hunt, para Nintendo, o jogo retorna ao primeiro nível, mas um bug impede que se acerte os patos neste recomeço. Este é um exemplo do que é chamado no mundo dos games de "Kill Screen".
River Raid
O épico jogo River Raid, do Atari, foi desenhado e boa parte de sua programação foi feita por uma mulher: Carol Shaw, uma excelente programadora e funcionária da Activision em 1982. Saiba mais sobre a história deste incrível jogo, aqui.
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.
Tetris
O título Tetris detém o recorde de jogo mais adaptado de todos os tempos. No total foram mais de 60 plataformas diferentes que receberam alguma versão do quebra-cabeças criado por Alexey Pajitnov. Conheça mais sobre este incrível jogo clicando aqui.
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.
Playstation
O Playstation só nasceu porque uma parceria entre Sony e Nintendo, para desenvolver uma unidade de CD para o Super Nintendo, fracassou. Clique aqui e saiba mais.