Usando operadores aritméticos, lógicos e comparação em consultas SQL

Gostou? Recomende:

Operadores aritméticos, lógicos e comparação são usados em consultas SQL para realizar tarefas como sumar ou agrupar valores, comparar valores do banco de dados com constantes e variáveis, entre outras. São amplamente usados nos principais banco de dados relacionais, como o SQL Server, MySQL, Access ou Oracle. Vemos uma explanação dos principais operadores.

Usando operadores aritméticos

Para criar expressões aritméticas em uma consulta SQL usamos os operadores abaixo:

  • +(somar)
  • -(subtrair)
  • *(multiplicar)
  • /(dividir)

Os operadores acima podem ser usados apenas em colunas do tipo numérico.
Você poderá usar operadores aritméticos em qualquer cláusula, exceto na cláusula FROM.

SELECT nome, salario, salario*12 As salario_anual
FROM empregados

No exemplo acima multiplicamos o valor da coluna salário por 12 nomeamos a saída de salário_anual.

Precedência de operadores

Quando usamos vários operadores em uma consulta é importante observarmos qual será a precedência dos operadores.

Na tabela empregados temos a coluna salário. Além do salário, cada empregado irá receber no final do ano um bônus de 200.

Para descobrir quanto esse empregado irá receber anualmente, temos de multiplicar o salário por 12 meses e adicionar o bônus de 200.

SELECT nome, salario, 12*salário+200 As salario_anual
FROM empregados 

No exemplo acima cada empregado receberia o bônus uma vez no ano, mas vamos considerar agora que o bônus passou a ser mensal.

Neste caso será necessário somar o salário mais o bônus e depois multiplicar por 12. Para resolver esse problema teremos de mudar a precedência e para isto usamos os parênteses, ou seja, tudo que estiver dentro do parêntese é executado primeiro.

Veja o mesmo exemplo com a mudança de precedência:

SELECT nome, salario, 12*(salario+200) As salario_anual
FROM empregados

 

Operadores de comparação

Os operadores de comparação são usados em condições que comparam uma expressão a outro valor ou expressão. A tabela abaixo mostra os operadores:

  • = Igual a
  • > Maior que
  • >= Maior ou igual a que
  • < Menor que
  • <= Menor ou igual a que
  • <> Diferente de
SELECT codigo_empregado, nome, salario
FROM empregados
WHERE codigo_empregado=8 

No exemplo acima, usamos o igual para criar um filtro na cláusula where, este filtro diz que os dados retornados deverão ser do código de empregado IGUAL a 8.

Operadores lógicos

O uso de um operador lógico faz com que duas condições tenham de produzir um resultado único. Uma linha só poderá ser retornada se o resultado global da condição for verdadeiro.

A tabela abaixo mostra os operadores lógicos disponíveis em SQL:

  • AND Retorna TRUE se ambas as condições forem verdadeiras
  • OR Retorna TRUE se uma das condições for verdadeira
  • NOT Retorna TRUE se a condição seguinte for falsa

No exemplo abaixo uma linha será retornada se o empregado for do estado de SP e o seu salário maior que 2200.

SELECT nome, salário, cidade, estado
FROM empregados
WHERE estado='SP' and salario > 2200

 Para produzir um resultado diferente basta alterar esta consulta, trocando o operador AND por OR.

SELECT nome, salário, cidade, estado
FROM empregados
WHERE estado='SP' or salario > 2200

Neste caso uma linha será retornado se o empregado for do estado de SP ou se o seu salário for maior que 2200.

Participe do Simulado de HTML

Veja também:





Compartilhe com seus amigos:


// Comentários

Carlos // Florianópolis SC // 01/05/2008 11:12:00

Parabéns, luiz

O conteúdo que vc postou é muito bem elaborado técnica e didaticamente(o que é fundamental).

É um ótimo auxílio ao iniciante; Me ajudou bastante

Abraço

Deivid // Contagem, MG // 25/03/2009 10:14:00

Ae cara, valeu, a tempos trabalhando, sempre surgem algumas dúvidas triviais, bom ter uma ref erencia bem feita assim na net. abraços

Annie // São Paulo // 12/06/2009 14:12:00

poxa, muito legal mesmo. ajudou muitoo!!

valeu e parabéns pelo blog!!

diogo goncalves santiago // brasilia df // 06/08/2009 14:08:00

preciso saber de pontuaçao da cnh

Blogueiro // SSA // 05/10/2009 09:44:00

Tá bem arrumando, mas pra ficar bom mesmo precisa ter sequência nos tópicos que pedem sequência. como este do SQL, e como todos os tópicos possuem exemplos citar apenas o que vai exemplificar, por exemplo o operador NOT, citou mas não exemplificou.

Um bom blog tb: http://www.inteligenciadigital.org/

Luiz Fernando // Rio de janeiro // 29/01/2010 09:16:00

Mto bom, excelente, simples, claro e objetivo.

É disso que precisamos.


Antes de desponder, leia o texto atentamente e veja o que ele que dizer.
Boa parte das perguntas feitas JÁ ESTÃO RESPONDIDAS no texto ou NÃO É DE MINHA COMPETÊNCIA RESPONDER.

Digite seu nome:


Digite seu email: (ele não será divulgado)


Cidade:


Assunto:


Comentários: mínimo 200 caracteres (comentários inadequados serão excluídos)


Digite os números abaixo:



 

 

2007-2012   //   Blog do Luis   //   Hospedado no UOLHost   //   Política de Privacidade   //   Eu creio em Deus