terça-feira, 21 de outubro de 2014

Recursos da Instrução SELECT

Recursos da Instrução SELECT


Boa tarde, vamos ao meu primeiro post: Introdução a instrução SELECT. Antes, quero esclarecer que o objetivo do blog é escrever sobre o que venho estudando, já que esta é a melhor forma de fixar o que aprendemos, escrevendo sobre o tema. E quem sabe, poder talvez ajudar alguém que também iniciou os estudos na área.

SELECT é uma instrução DML (Data Manipulation Language), é muito utilizada, não apenas para criar consultas ou relatórios, como também é uma ferramenta muito utilizada na criação de objetos PL/SQL. Com essa instrução, é possível criar cursores, validar dados, realizar inserção de dados, criar tabelas com mesmas estruturas com/sem dados, criar views, entre outras utilidades. É importante compreender bem suas ferramentas.

Inicialmente, falaremos dos recursos da instrução SELECT, que são: seleção, projeção e junção.

Seleção: refere-se ao que você deseja selecionar, restringir, na sua consulta. Um exemplo seria, digamos que exista uma tabela de funcionários e você deseja filtrar, selecionar, apenas os funcionários que ganham acima de 2000,00 R$, nesse caso aplica-se uma restrição com o uso da cláusula WHERE, seria algo do tipo:

SELECT *
FROM FUNCIONARIOS
WHERE SALARIO > 2000,00R$;

Todas as colunas seriam exibidas, mas apenas os funcionários com salário acima de 2000,00R$ estariam nas linhas selecionadas.

Projeção: o recurso de projeção refere-se a quais colunas serão projetadas ao executar a consulta, ao usar o * (como no exemplo anterior) todas as colunas serão projetadas ao executarmos a consulta, ou seja, todas as colunas da tabela serão mostradas no resultado, independente do filtro de seleção. Digamos que não haja interesse em que todos os campos sejam exibidos, você pode projetar apenas os campos que interessam:

SELECT MATRICULA, NOME, ENDEREÇO
FROM FUNCIONARIOS;

Perceba que nesse caso, todos os registros serão selecionados, não há filtros na pesquisa. No entanto, apenas a matrícula, nome e endereço serão exibidos, essa é a nossa projeção.

Junção: refere-se a junção de duas ou mais tabelas, digamos que exista a tabela FUNCIONARIOS e nela existe o ID_DEPARTAMENTO de cada funcionário, e que exista a tabela DEPARTAMENTOS com o ID_DEPARTAMENTO  e DESC_DEPARTAMENTO, e você precisa exibir a descrição do departamento, o nome e a matrícula de cada funcionário. Nesse caso, um dos dados que você precisa selecionar está em outra tabela, além de FUNCIONARIOS, você precisa fazer a junção dessas tabelas para selecionar a DESCR_DEPARTAMENTO. Seria:

SELECT F.MATRICULA, F.NOME, D.DESCR_DEPARTAMENTO
FROM FUNCIONARIOS F, DEPARTAMENTOS D
WHERE F.ID_DEPARTAMENTO = D.ID_DEPARTAMENTO;

Esse tipo de junção é extremamente utilizada, visto que por questões normativas, não teremos uma única tabela com todos os campos e tipos de informações possíveis. Para que a junção ocorra corretamente, tem-se que se observar o correto relacionamento entre as entidades, que é feito pelo uso das chaves primárias e estrangeiras, garantindo a integridade das informações.


Por hoje é só, se alguém foi trazido pela força do destino a essa página, pode deixar a sua contribuição nos comentários e volte sempre.

Nenhum comentário:

Postar um comentário