Colégio da Imaculada Curso Técnico em Informática Álgebra Relacional

Slides:



Advertisements
Apresentações semelhantes
Capítulo 6 A Álgebra Relacional e o Cálculo Relacional
Advertisements

AULA 5 PGC Sistemas de Banco de Dados Profa. Sandra de Amo
Álgebra Relacional Marcelo Mendes Manaus
Curso: Banco de Dados I Análise de Sistemas PUC Campinas
DESENHO de BASE de DADOS RELACIONAL
SQL Structured Query Language (continuação)
Prof.: Bruno Rafael de Oliveira Rodrigues
Linguagens relacionais
Manipulação algébrica
Algoritmos e Programação Linguagens de Programação Teoria Aula (09/06)
Otimização de Consultas em SQL Parte I - Planos de Execução e Equivalências de Expressões da Álgebra Relacional AULA 19 Profa. Sandra de Amo Programa.
Gerenciamento de Banco de Dados
Algebra relacional nomeada e não-nomeada
Otimização de Consultas em SQL Planos de Execução e Equivalências de Expressões da Álgebra Relacional AULA 24 Profa. Sandra de Amo GBC053 – BCC
Subconsultas ou Consultas Aninhadas
SQL – Consultas Básicas
Modelo Relacional parte 1
SQL – DML Consultas envolvendo relacionamentos entre tabelas
SQL – DML Consulta a dados de uma tabela
ÁLGEBRA RELACIONAL Cada operador da álgebra relacional toma uma ou duas relações como sua entrada e gera uma nova relação como saída. São oito os operadores.
Álgebra Relacional – Parte 2
Álgebra Relacional – Parte 3
Profa. Aline Vasconcelos
Material III-Bimestre Wagner Santos C. de Jesus
Programação e Sistemas de Informação
Unidade 5 – Exploração de uma base de dados em ambiente Windows
Modelo Entidade/Relação
Processamento da Informação BC-05045
Modelo Relacional Uma base de dados é Uma relação é
Prof. Alfredo Parteli Gomes
Algoritmos e Estruturas de Dados I – Estruturas de Controle de Fluxo
SISTEMAS DE INFORMAÇÃO – UNIESP/2010
Capítulo 13 Funções compostas slide 1
Introdução a Banco de Dados com exercícios de aplicação
Otimização de Consultas em SQL Planos Alternativos AULA 24 Profa. Sandra de Amo GBC053 – BCC
BCC /01 Funções. Material Didático Unificado. 1 BCC701 – Programação de Computadores I Universidade Federal de Ouro Preto Departamento de Ciência.
ENGENHARIA DE AUTOMAÇÃO INDUSTRIAL
Álvaro Vinícius de Souza Coêlho
AULA 26 Profa. Sandra de Amo GBC053 – BCC
Otimizador de consultas
Capítulo 3: Modelo Relacional
1 Álgebra Relacional Aspectos de Manipulação (Linguagens Formais de Consulta) –Álgebra Relacional Características –Descrevem qualquer operação de consulta.
Algoritmos 1º Semestre Materia: Informática Profº: Cristiano.
Otimização de Consultas em SQL Planos de Execução
Gerência de Projetos (continuação) Prof. Tales Cabral Colégio da Imaculada Curso Técnico em Informática 3º Módulo.
Modelo de Dados Relacional
ASP (Active Server Pages)
Ano letivo CURSO EFA DE TÉCNICO DE INFORMÁTICA E SISTEMAS Docente: Ana Batista EDUCAÇÃO E FORMAÇÃO DE ADULTOS Curso EFA – Sec. Turma C
Circuitos Lógicos e Álgebra de Boole
Colégio da Imaculada Curso Técnico em Informática
Álgebra Relacional (Exemplos)
Professor: Pedro Lopes
©Silberschatz, Korth and Sudarshan (Modificado)3.3.1Database System Concepts Capítulo 3: Modelo Relacional Estrutura das Bases de Dados Relacionais Redução.
Comandos SQL.
Banco de Dados Aplicado ao Desenvolvimento de Software
Igor Steinmacher, MSc. O maravilhoso mundo da Lógica de Programação.
TECNOLOGIAS E LINGUAGENS PARA BANCO DE DADOS I
Sumário 1 SQL Embutida 2 Processamento de Consultas
Banco de Dados I Unidade 6 Processamento de Consultas Otimização Lógica.
Uma Proposta para Bancos de Dados Categoriais Rafael C. Pinto.
Tipos de Dados Todo o trabalho realizado por um computador é baseado na manipulação das informações contidas em sua memória. Estas informações podem.
Propósitos para o reinício Prof. Tales Kunz Cabral Colégio da Imaculada Curso Técnico em Informática 2º Módulo.
UCSal – Bacharelado em Informática
©Silberschatz, Korth and Sudarshan (Modificado)3.2.1Database System Concepts Capítulo 3: Modelo Relacional Estrutura das Bases de Dados Relacionais Redução.
Colégio da Imaculada Colégio da Imaculada Curso Técnico em Informática
1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados.
Banco de Dados Introdução à Linguagem SQL – Junção Manipulação com 3 Tabelas ou + em relacionamentos n/1 Esta aula é baseada em material produzido pelo.
Introdução a Programação Aula 02 Jackson Eduardo
Questionário (Básico) Autor: Skyup Informática. Atividade - Questionário O módulo permite criar uma série de questões, que deverão ser respondida pelos.
Gestão da Tecnologia da Informação Fundamentos de Sistemas de Banco de Dados Faculdade de Tecnologia Senac Jaraguá do Sul.
Transcrição da apresentação:

Prof. Tales Cabral talescabral@colegiodaimaculada.com.br Colégio da Imaculada Curso Técnico em Informática Álgebra Relacional Prof. Tales Cabral talescabral@colegiodaimaculada.com.br 2º Módulo

Introdução A Álgebra Relacional é uma forma de cálculo sobre conjuntos ou relações. (Wikipedia) É uma linguagem de consulta em tabelas relacionais. (Database Management Systems/2003) A Álgebra Relacional é uma linguagem de consulta formal, porém procedimental, ou seja, o usuário fornece as instruções ao sistema para que o mesmo realize uma seqüência de operações na base de dados para calcular o resultado desejado. (Ricardo Rezende – SQL Magazine) A forma de trabalho na linguagem é pegar uma ou mais tabelas (conforme necessidade) como entrada de dados e produzir uma nova tabela como resultado das operações.

Álgebra Relacional União (): relação3 = (relação1  relação2) Atua sobre conjuntos (tabelas) e devolve como resultado: conjuntos (tabelas). Teoria de conjuntos (união, intersecção, diferença, produto cartesiano). Outros operadores (seleção, projeção, junção e divisão). União (): relação3 = (relação1  relação2)

Intersecção (): relação3 = (relação1  relação2)  = Diferença (): relação3 = (relação1  relação2)  =

Produto Cartesiano (): relação3 = (relação1  relação2) A relação final corresponde à “soma” dos esquemas das relações iniciais. Os registos resultantes correspondem à combinação dos registos da relação1 com os registos da relação2. A cardinalidade da relação resultante corresponde à multiplicação das cardinalidades das duas relações iniciais.  =

Seleção (): relação2 =  <condição> (relação1)  A=A1 = Projeção (): relação2 =  <lista_atributos> (relação1)  A,C =

Junção (): relação3 = (relação1  relação2) Também chamada de “Junção Natural” Junção (): relação3 = (relação1  relação2) Combina os registos provenientes das duas relações, com atributos comuns, numa só relação. O esquema da relação final corresponde consiste na soma dos esquemas das relações iniciais. A relação final contém um registo por cada combinação de registos das duas relações que possuam valores iguais nos atributos comuns.  =

Divisão (): relação3 = (relação1  relação2) As relações iniciais devem ser compatíveis para a divisão (r1  r2). Os atributos da relação final são os atributos da relação1 que não existem na relação2. Os registos que existem na relação final são os registos que existem na relação1 combinados com os registos da relação2.  =

Exemplo pnome_p, pontuacao (P2) = ? pidade (P2) = ? Estas instâncias serão utilizadas para consultas a seguir, representando: P1 – relação de pilotos 1 P2 – relação de pilotos 2 R1 – relação de reservas Descrever e dar a relação resultante: pnome_p, pontuacao (P2) = ? pidade (P2) = ? spontuacao>70 (P2) = ?

Conclusão Portanto, álgebra relacional é uma linguagem de consulta procedural e formal (não de programação) que consiste em um conjunto de operações que tem como entrada uma ou mais relações e retorna, como saída, uma nova relação. Contudo, para isso, a álgebra relacional dispõe dos operadores para produzir suas relações. Sendo assim, basta que as tabelas estejam criadas e organizadas para que se possa aplicar os operadores sobre as relações e obter os resultados esperados. Vale lembrar que a álgebra relacional serve como padrão para compreensão de um estudo posterior de SQL sobre bancos de dados.

Exercício Base de Dados: médicos(nEmpr,nomeM,especialidade) pacientes(nBI,nomeP,telefone,morada,idade) fármacos(codF,nomeF) consultas(nConsulta,data,nBI,nEmpr) receitas(codF,nConsulta,quantidade) Fazer as questões do slide seguinte!

Questões sidade > 50 (pacientes) 1. Quais os pacientes com mais de 50 anos de idade? sidade > 50 (pacientes) 2. Quais os nomes dos pacientes com mais de 50 anos de idade? pnomeP (sidade > 50 (pacientes)) 3. Quais os fármacos que já foram receitados em consultas da clínica? pnomeF((sreceitas.codF = fármacos.codF(receitas x fármacos))) 4. Quais os fármacos que nunca foram receitados? pnomeF(fármacos) – pnomeF(sreceitas.codF = fármacos.codF(receitas x fármacos)))