Exercícios de Álgebra Relacional em Banco de Dados

Classificado em Formação e Orientação para o Emprego

Escrito em em português com um tamanho de 3,35 KB

Consultas em Álgebra Relacional

  1. Exibir o nome, CPF e data de admissão de todos os funcionários:
    $$\pi_{\text{Nome\_func, CPF\_func, Data\_admissao\_func}} (\text{FUNC})$$
  2. Exibir o histórico de todos os cargos e salários do funcionário 185:
    $$\sigma_{\text{Numero\_func} = 185} (\text{HIST})$$
  3. Exibir os nomes de todos os departamentos cadastrados:
    $$\pi_{\text{Nome\_dpto}} (\text{DPTO})$$
  4. Exibir os nomes dos funcionários ativos:
    $$\pi_{\text{Nome\_func}} (\sigma_{\text{Situacao\_func} = \text{'A'}} (\text{FUNC}))$$
  5. Exibir o salário líquido pago ao funcionário 76 no mês de março de 2010. Obs.: mensalista.
    $$\pi_{\text{Sal\_base\_pgto} - \text{Total\_desc\_pgto}} (\sigma_{\text{Numero\_func} = 76 \land \text{Mes\_ref\_pgto} = 3 \land \text{Ano\_ref\_pgto} = 2010} (\text{PGTO}))$$
  6. Exibir os nomes de todos os prestadores de serviço, informando também seus salários base e códigos dos cargos:
    $$\pi_{\text{Nome\_func}, \text{Salario\_base\_func}, \text{FUNC.Codigo\_carg}} (\sigma_{\text{FUNC.Codigo\_carg} = \text{CARG.Codigo\_carg} \land ( \text{Tipo\_contrato\_carg} = \text{'R'} \lor \text{Tipo\_contrato\_carg} = \text{'S'} )} (\text{FUNC} \bowtie \text{CARG}))$$
  7. Exibir o nome e a data de admissão dos funcionários alocados no departamento “T02”:
    $$\pi_{\text{Nome\_func}, \text{Data\_admissao\_func}} (\sigma_{\text{FUNC.Numero\_func} = \text{ALOC.Numero\_func}} (\text{FUNC} \bowtie \sigma_{\text{Codigo\_dpto} = \text{'T02'}} (\text{ALOC})))$$
  8. Exibir o nome do gerente do departamento “Limpeza III”:
    $$\text{LIMP} \leftarrow \sigma_{\text{Nome\_dpto} = \text{'Limpeza III'}} (\text{DPTO})$$
    $$\pi_{\text{Nome\_func}} (\sigma_{\text{FUNC.Numero\_func} = \text{LIMP.Numero\_gerente}} (\text{FUNC} \bowtie \text{LIMP}))$$
  9. Exibir o número e nome dos empregados mensalistas que tenham o mesmo cargo que o funcionário “Valter Nogueira”:
    $$\pi_{\text{OUTROS.Numero\_func}, \text{OUTROS.Nome\_func}} (\sigma_{\text{OUTROS.Codigo\_carg} = \text{VALTER.Codigo\_carg}} (\rho_{\text{VALTER}} (\sigma_{\text{Nome\_func} = \text{'Valter Nogueira'}} (\text{FUNC})) \bowtie \rho_{\text{OUTROS}} (\sigma_{\text{Nome\_func} \neq \text{'Valter Nogueira'} \land \text{FUNC.Codigo\_carg} = \text{CARG.Codigo\_carg}} (\text{FUNC}) \bowtie \sigma_{\text{Tipo\_contrato\_carg} = \text{'M'}} (\text{CARG}))))$$
  10. Exibir o nome e o salário líquido pago para todos os empregados horistas que trabalham no departamento “Mecânica ABC”:
    $$\text{MECABC} \leftarrow \sigma_{\text{Nome\_dpto} = \text{'Mecanica ABC'}} (\text{DPTO})$$
    $$\text{HOR} \leftarrow \sigma_{\text{Tipo\_contrato\_carg} = \text{'H'}} (\text{CARG})$$
    $$\pi_{\text{Nome\_func}, \text{Sal\_base\_pgto} \times \text{Total\_horas\_pgto} - \text{Total\_desc\_pgto}} (\sigma_{\text{MECABC.Codigo\_dpto} = \text{ALOC.Codigo\_dpto} \land \text{ALOC.Numero\_func} = \text{FUNC.Numero\_func} \land \text{FUNC.Codigo\_carg} = \text{HOR.Codigo\_carg} \land \text{FUNC.Numero\_func} = \text{PGTO.Numero\_func}} (\text{MECABC} \bowtie \text{ALOC} \bowtie \text{FUNC} \bowtie \text{HOR} \bowtie \text{PGTO}))$$

Entradas relacionadas: