31/07/2012

SQL - Comando SELECT

O comando SELECT é usado para buscar os valores gravados nas tabelas do banco de dados dentro de um critério pré definido pelo programador, utilizando as clausulas disponíveis na linguagem, onde, dentre elas, apenas a FROM é obrigatória.

Veja abaixo a sintaxe de declaração do SELECT:


SELECT 
        [ALL | DISTINCT] coluna1 [,coluna2]
 FROM 
        tabela1 [, tabela2]
 [WHERE "condições"]
 [GROUP BY "colunas"]
 [HAVING "condições"]
 [ORDER BY "colunas" [ASC | DESC] ]

Abaixo, a listagem operadores e as principais clausulas de comparação:

   = igual
   <> diferente
   != diferente
   > maior que
   !> não maior (menor ou igual)
   < menor que
   ! não menor (maior ou igual)
   >= maior or igual
   <= menor ou igual
   * todos
   ORDER BY define a ordem
   ORDER BY DESC em ordem decrescente
   WHERE onde
   BETWEEN entre. Pertence ao intervalo declarado.
   NOT BETWEEN não pertence ao intervalo declarado.
   GROUP BY agrupar
   IS NULL testa valores nulos. Verifica, por exemplo, se colunas não contém nenhum valor armazenado. Com conteúdo nulo.
   IS NOT NULL testa valores não nulos. Sem conteúdo nulo.
   LIKE o predicado LIKE procura por strings que se encontram dentro de um determinado padrão. Este predicado só pode ser usado com tipos de dados CHARou VARCHAR.
   EXISTS Verifica o número de linhas retornadas pela subquery. Caso ela contenha uma ou mais linhas, então o retorno será mostrado.
   IN permite comparar o valor de uma coluna com um conjunto de valores. Normalmente, utilizamos o IN para substituir uma série de comparações seguidas da cláusula OR.
   NOT IN Não pertence ao conjunto declarado


Exemplos de utilização e estrutura:


Tabela 1 - Usuarios
ID Nome Sobrenome
10 Eduardo Marques
11 Fernando Miranda
12 Rafael Hall
13 Victor Soares


Tabela 2 - Planejamento
ID_USUARIO DIA_SEMANA TEMA
10 Terça Banco de dados
11 Sexta Redes
12 Sabado Fotografia

Exemplo 1 - Listando todos os usuários:
SELECT * FROM USUARIOS

Exemplo 2 - Listando todos os usuários e seus dias ordenados por ID:
SELECT 
   * 
FROM 
   USUARIOS U, 
   PLANEJAMENTO P 
WHERE 
   P.ID_USUARIO = U.ID 
ORDER BY 
   U.ID

Exemplo 3 - Buscar o usuário com o ID igual a 10:
SELECT 
   * 
FROM 
   USUARIOS U 
WHERE 
   U.ID = '10' 

Exemplo 4 - Buscar o usuários num conjunto de IDs:
SELECT 
   * 
FROM 
   USUARIOS U 
WHERE 
   U.ID IN ('10','11')

Exemplo 5 - Buscar o usuários fora de um conjunto de IDs:
SELECT 
   * 
FROM 
   USUARIOS U 
WHERE 
   U.ID NOT IN ('10','11')

Exemplo 6 - Buscar o tema do usuário que contenha 'Edu' no nome:
SELECT 
   P.TEMA 
FROM 
   USUARIOS U, 
   PLANEJAMENTO P 
WHERE 
   P.ID_USUARIO = U.ID 
   AND U.NOME LIKE 'Edu%'

Nenhum comentário: