sábado, 25 de junho de 2016

Select

Olá!

O comando Select é utilizado para obter (visualizar, recuperar, buscar) os dados cadastrados no DB. É um comando de características e uso simples, e que possui vários comandos internos que permitem que o Select seja aplicado de diversas formas.

Uma forma básica de descrever esse comando, é: SELECIONE dados DA tabela; 
Em SQL:  SELECT campo(s) FROM tabela(s);

Assim, como foi apresentado no post anterior, os dados são armazenados no DB em objetos denominados de tabelas. Então, ao realizar alguma consulta em uma tabela de registros, será retornado como resposta um ou mais registros desta tabela. Assim, a resposta de uma instrução SELECT acaba sendo uma tabela. Para um melhor entendimento, veja o exemplo abaixo:

PESSOAresposta_da_consulta
CDNOMESOBRENOMEIDADECDNOMESOBRENOMEIDADE
1FelipeBarbosa234AlineSilva21
2AnaVieira205MairaDantas25
3JoãoSantos19
4AlineSilva21
5MairaDantas25

Vamos analisar, acima temos uma tabela PESSOA com 5 registros. Se realizarmos uma consulta nesta tabela que obtenha os registros que possuam o código maior que 3, será retornado 2 registros no resultado, conforme a tabela resposta_da_consulta. Observação, quando realizado um Select não é criado uma nova tabela no DB.

A sintaxe do comando Select:
1 - Para consultar um campo da tabela:

          SELECT nome_campo_1 
             FROM nome_tabela;

2 - Para consultar mais de um campo da tabela:
          SELECT nome_campo_1, nome_campo_2, nome_campo_3
             FROM nome_tabela;

3 - Para consultar dados sob uma determinada condição:
          SELECT nome_campo_1, nome_campo_2, nome_campo_3
             FROM nome_tabela
           WHERE condição;

4 - Para ordenar o resultado da consulta
          SELECT nome_campo_1, nome_campo_2, nome_campo_3
             FROM nome_tabela
     ORDER BY nome_campo_x;

Então, qual é a instrução SQL para o comando Select que realiza a consulta na tabela PESSOA e retorna a "tabela" resposta_da_consulta utilizadas no exemplo acima?

O comando para essa consulta:
          SELECT CD, NOME, SOBRENOME, IDADE
             FROM PESSOA
           WHERE CD > 3

Para essa consulta observe que está sendo retornado todos os campos da tabela consultada. No Select o carácter * significa todos. Então o comando: 
          SELECT *
             FROM PESSOA
           WHERE CD > 3
também retorna o mesmo resultado do SQL anterior.

Mas não é boa prática de programação utilizar o Select *. Pois imagine que foi definido que era para ser construído um SQL para buscar o CD, NOME, SOBRENOME e IDADE da tabela PESSOA para um relatório. E posteriormente (dias, meses, anos, muito tempo, ...) a tabela PESSOA teve a inclusão de mais campos, se a instrução SQL estiver com SELECT * irá também retornar os novos campos.

Então, uma boa prática de programação é colocar os nomes dos campos que estão sendos consultados no Select. Os demais comandos internos do Select será apresentado nos próximos post's!

Consultar a relação de Termos e Abreviaturas acesse aqui.
Até o próximo post!

Nenhum comentário:

Postar um comentário