ÁLGEBRA RELACIONAL

 

A álgebra relacional é uma linguagem que define operadores para atuar nas tabelas, é utilizada para realizar manipulações de dados no modelo relacional.

 

Um banco de dados relacional é descrito através de conceitos matemáticos simples, como:

 
  • Teoria de conjuntos e domínios;
  •  
  • Operações;
  •  
  • Produtos cartesianos entre tabelas;
  •  

    A utilização da teoria de conjuntos e domínios auxilia o usuário a ter melhor visão dos dados. Por exemplo, os dados de uma empresa podem ser: conjunto de nomes de funcionários, cujo domínio são os nomes possíveis de serem escritos pelo alfabeto português.

     

    OPERAÇÕES

     

    As operações são capazes de manipular um banco de dados. Cada operação usa uma ou mais tabelas como operando e produz sempre outra tabela como resultado. As operações fundamentais estão listadas abaixo.

     

    Para as operações "seleção" e "projeção", considere a tabela EMPREGADO abaixo:

     

    EMPREGADO

     
     

  • Seleção (SELECT): Seleciona os campos de uma tabela que satisfazem uma determinada propriedade. O símbolo σ (sigma) representa a seleção.
  •  

    Exemplo: A operação σ salario > 1000 (EMPREGADO) representa que devem ser selecionados todos os salários maiores que R$ 1.000,00 da tabela EMPREGADO:

     
     

  • Projeção (PROJECT): é utilizada para selecionar determinadas colunas de uma única tabela já existente. O resultado é uma nova tabela que contém apenas os campos requisitados. As duplicidades são eliminadas. O símbolo π representa a projeção.
  •  

    Exemplo: π nome, salario (EMPREGADO). Nesse exemplo será criada uma nova tabela contendo apenas os campos nome e salario da tabela EMPREGADO:

     
     

  • União: é criada uma tabela, com todas as linhas únicas (não duplicadas) de outras tabelas. Só é possível utilizar esse operador caso as tabelas sejam equivalentes e gerem o mesmo tipo de resultado. O símbolo representa a união.
  •  

    Exemplo: Considere as tabelas:

     

    ALUNOS

     
     

    PROFESSORES

     
     

    Desta forma, (ALUNOS) (PROFESSORES), fica:

     
     

  • Intersecção: cria-se uma tabela a partir de outras contendo todas as tuplas (linhas) que aparecem em todas as tabelas envolvidas. Só é possível utilizar esse operador caso as tabelas sejam equivalentes. O símbolo representa a intersecção.
  •  

    Exemplo: Considere as tabelas:

     

    FUNCIONARIOS

     
     

    SUPERVISORES

     
     

    ATENDENTES

     
     

    A intersecção dessas duas tabelas, (FUNCIONARIOS) (SUPERVISORES), fica:

     
     

  • Diferença: cria uma tabela a partir da diferença de uma tabela por outra. Porém, vale ressaltar, que a diferença da primeira tabela pela segunda não é a mesma que a diferença da segunda tabela pela primeira, ou seja, a operação diferença não é comutativa. O símbolo - representa a diferença.
  •  

    Exemplo: Ainda com as tabelas do exemplo anterior, tem-se a seguir:

     

    FUNCIONARIOS - ATENDENTES:

     
     

  • Produto cartesiano: é a combinação (junção) de tuplas de duas tabelas. O símbolo X representa o produto cartesiano.
  •  

    Exemplo: Considere as tabelas:

     

    ALUNOS

     
     

    DISCIPLINAS

     
     

    O produto cartesiano ALUNOS X DISCIPLINA fica assim:

     
     

  • Junção (JOIN): essa operação é de fundamental importância em banco de dados relacionais, pois é a partir dela que é possível fazer relacionamentos. é utilizada para combinar tuplas de duas tabelas partindo dos atributos em comum entre ambas. O símbolo ϑ representa a junção.
  •  

    Exemplo: considere as tabelas:

     

    ALUNOS

     
     

    TURMAS

     
     

    A junção: ALUNOS ϑ TURMAS = cod_turma TURMAS, será:

     

    ALUNOS_TURMAS

     
     

  • Divisão: tem como resultado todos os elementos da primeira tabela que se relacionam com todos os elementos da segunda tabela. O símbolo : representa a divisão.
  •  

    Por exemplo: considere as tabelas:

     

    EQUIPES

     
     

    PROJETOS

     
     

    A divisão: PROJETOS : EQUIPES, será:

     
     

    As operações também podem ser aninhadas para se facilitar o uso, já que nesse caso não é necessário a utilização de várias operações sucessivas.

     

    Exemplo: Para selecionar todos os nomes e salários das pessoas que residem no DF, a operação ficaria assim:

     

    π nome, salario (σ estado='DF' (EMPREGADOS));

     

    O que resultaria em:

     
     

     
    Com intuito de apoiar o aprendizado em Banco de Dados, sugere-se assistir a videoaula para o aperfeiçoamento no conhecimento deste conteúdo.

    Atividade de Fixação

     

    No intuito de fixar a aprendizagem iniciada por meio deste módulo e verificar como está sua compreensão sobre o mesmo, são sugeridos alguns exercícios de fixação para serem resolvidos. Clique no link de exercícios ao lado, pois será por meio dele iniciada a lista de exercícios sobre os conteúdos estudados até este momento. Boa revisão sobre os mesmos!!