Projeção (álgebra relacional)

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa

Geralmente indicada na literatura por {\pi} (a letra grega pi) produz um conjunto onde há um elemento para cada elemento do conjunto de entrada, sendo que a estrutura dos membros do conjunto resultante é definida nos argumentos da operação. Pode ser entendida como uma operação que filtra as colunas de uma tabela. Por operar sobre apenas um conjunto de entrada, a projeção é classificada como uma Operação unária.

Sintaxe[editar | editar código-fonte]

{\pi} LISTA_ATRIBUTOS (RELAÇÃO)

Exemplo[editar | editar código-fonte]

'{\pi}' NmFunc (FUNCIONÁRIO)

Essa expressão produz um conjunto contendo um elemento para cada funcionário, e cada elemento contém apenas a informação referente a NmFunc da relação funcionário original.

FUNCIONARIO

NrMatric NmFunc DtAdm Sexo
1001 JOSE DA SILVA 10 de agosto de 2003 M
1005 MARTA LEITE 2 de março de 2004 F
1035 JOAO PEDRO 12 de janeiro de 2003 M
1046 RODRIGO SOUZA 17 de agosto de 2005 M
1065 ANA SILVEIRA 15 de outubro de 2007 F

Aplicando PROJEÇÃO: NMFUNC, teremos como resultado:

FUNCIONARIO´

NmFunc
JOSE DA SILVA
MARTA LEITE
JOAO PEDRO
RODRIGO SOUZA
ANA SILVEIRA

Agora estamos interessados em identificar todos os funcionários de sexo masculino existentes no banco de dados. É uma situação que não podemos resolver com projeções apenas, uma vez que deveremos descartar elementos do conjunto inicial. Para casos desse tipo existe uma operação relacional chamada Seleção.

Eliminação de duplicatas[editar | editar código-fonte]

A Eliminação de duplicatas consiste em eliminar duas ou mais linhas com os mesmos valores em suas colunas, mantendo uma única ocorrência desta linha. A eliminação de duplicatas é implícita nas operações de Projeção.

SQL[editar | editar código-fonte]

Em SQL a projeção corresponde a cláusula SELECT.

No exemplo anterior, a consulta poderia ser convertida para:

SELECT NmFunc FROM Funcionario

O comando SELECT[editar | editar código-fonte]

Para eliminação de duplicatas, utilizamos o distinct: SELECT[distinct] lista_atributos

Exemplo: Buscar as especialidades dos médicos;
Tabela: Medicos(CRM, nome, idade, especialidade)
Expressão: SELECT distinct especialidade FROM Medicos

Podemos, ainda, obter o retorno de valores calculados utilizando operadores aritméticos (+,-,*,/), ou por invocação de funções de agregação:

COUNT: Contador de ocorrências de um atributo;
• MAX / MIN: Valores máximo / mínimo de um atributo;
• SUM: Somador de valores de um atributo;
• AVG: Média de valores de um atributo;

Ver também[editar | editar código-fonte]


Ícone de esboço Este artigo sobre banco de dados é um esboço. Você pode ajudar a Wikipédia expandindo-o.