Álgebra Relacional: Prod. Cartesiano. Álgebra Relacional: Projeção. Álgebra Relacional: Junção Natural. Álgebra Relacional: Junção. 1.

Tamanho: px
Começar a partir da página:

Download "Álgebra Relacional: Prod. Cartesiano. Álgebra Relacional: Projeção. Álgebra Relacional: Junção Natural. Álgebra Relacional: Junção. 1."

Transcrição

1 Programa DCC011 Introdução a Banco de Dados Álgebra Relacional Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br Introdução Conceitos básicos, características da abordagem de banco de dados, modelos de dados, esquemas e instâncias, arquitetura de um sistema de banco de dados, componentes de um sistema de gerência de banco de dados. Modelos de dados e linguagens Modelo entidade-relacionamento (ER), modelo relacional, álgebra relacional, SQL. Projeto de bancos de dados Fases do projeto de bancos de dados, projeto lógico de bancos de dados relacionais, normalização. Novas Tecnologias e Aplicações de Banco de Dados DCC011 - profa. Mirella M. Moro 2 Correção de Exercícios Autor(CodAutor, NomeAutor, CodEndereco, CodInst) (CodEndereco) referencia Endereco (CodInst) referencia Instituicao Artigo(CodArtigo, Titulo, AnoPublicacao) AutorArtigo(CodAutor, CodArtigo) (CodAutor) referencia Autor,(CodArtigo) referencia Artigo Instituicao(CodInst, NomeInst, CodEndereco) (CodEndereco) referencia Endereco Endereco(CodEndereco, Rua, Numero, Bairro, Cidade, Estado, Pais, Cep) 1) Obter os títulos dos artigos seguidos do nome seus autores. π Titulo, NomeAutor (Autor AutorArtigo Artigo) OU AutorA, AutorArtigoAA, ArtigoR π Titulo, NomeAutor σ A.Codautor=AA.CodAutor ^ R.CodArtigo=AA.CodArtigo (A AA R) OBS: junção natural de três tabelas funciona desde que tenham um atributo em comum para dois pares delas. Nesse caso, a condição implícita da junção é Autor.CodAutor = AutorArtigo.CodAutor ^ AutorArtigo.CodArtigo = Artigo.CodArtigo 2) Obter os nomes dos autores que publicaram artigos em 1998 e (π NomeAutor σ AnoPublicacao=1998 (Autor AutorArtigo Artigo)) (π NomeAutor σ AnoPublicacao=1999 (Autor AutorArtigo Artigo)) REVISÃO operadores básicos da álgebra relacional OBS: Nãopodeser (π NomeAutor σ AnoPublicacao=1998 ^ AnoPublicacao=1999 (Autor AutorArtigo Artigo)) POR QUÊ?!?!?!?!?!?!? DCC011 - profa. Mirella M. Moro 3 DCC011 - profa. Mirella M. Moro 4 Álgebra Relacional: Revisão Dadas duas relações R1 e R2 Operações Básicas Selection (σ) Seleciona em sub-conjunto de tuplas da relação Projection (π) Apaga colunas indesejadas da relação Cross-product ( ) Permite combinar R1 e R2 Set-difference ( ) Tuplas em R1, mas não em R2 Union ( ) Tuplas em R1 e em R2 Operações Adicionais: Intersecção, junção, divisão, renomear Desde que cada operação retorna uma relação, operações podem ser compostas! Database Management Systems, R. Ramakrishnan (tradução, autorizada, de Anna & Mario Nascimento) DCC011 - profa. Mirella M. Moro 5 Álgebra Relacional: Seleção Relation Sells: bar beer price Joe s Bud 2.50 Sue s Miller 3.00 JoeMenu σ bar= Joe s (Sells): bar beer price Joe s Bud 2.50 σ mantém as colunas σ seleciona linhas de acordo com condição DCC011 - profa. Mirella M. Moro 6

2 Álgebra Relacional: Projeção Relation Sells: bar beer price Joe s Bud 2.50 Sue s Miller 3.00 MUITO IMPORTANTE ÁLGEBRA ELIMINA DUPLICATAS Prices π beer,price (Sells): beer price Bud 2.50 Miller 2.75 Miller 3.00 π mantém colunas conforme definido DCC011 - profa. Mirella M. Moro 7 Álgebra Relacional: Prod. Cartesiano R1( A, B ) R2( B, C ) R3 R1 Χ R2 R3( A, R1.B, R2.B, C ) PRODUTO CARTESIANO: funciona exatamente igual ao produto cartesiano de conjuntos da matemática PORÉM cada elemento é uma LINHA INTEIRA Número de colunas = #colunas em R1 x #colunas em R2 sempre Se tiver duas colunas com nome igual (B) o resultado fica NomeTabela.NomeColuna DCC011 - profa. Mirella M. Moro 8 Álgebra Relacional: Junção Funciona como uma projeção seguido de uma seleção cuja condição é especificada junto ao operador Álgebra Relacional: Junção Natural Sells( bar, beer, price ) Bars( name, addr ) Joe s Bud 2.50 Joe s Maple St. Sue s River Rd. Sue s Coors 3.00 Condição de junção BarInfo Sells Sells.bar = Bars.name Bars BarInfo( bar, beer, price, name, addr ) Joe s Bud 2.50 Joe s Maple St. Joe s Maple St. Sue s River Rd. Sue s Coors 3.00 Sue s River Rd. DCC011 - profa. Mirella M. Moro 9 Sells( bar, beer, price ) Bars( bar, addr ) Joe s Bud 2.50 Joe s Maple St. Sue s River Rd. Sue s Coors 3.00 Condição de junção implícita= conjunção da igualdade de todos os pares de colunas de mesmo nome BarInfo := Sells Bars Note: Bars.name agora é Bars.bar para fazer junção natural BarInfo( bar, beer, price, addr ) Joe s Bud 2.50 Maple St. Joe s Milller 2.75 Maple St. River Rd. Sue s Coors 3.00 River Rd. No resultado: para os pares de colunas de mesmo, apenas uma cópia é considerada DCC011 - profa. Mirella M. Moro Divisão Álgebra Relacional 1. Divisão 2. Regras de Precedência 3. Junção: Natural, EquiJoin, OuterJoin, SelfJoin 4. Esquemas resultantes Divisão de duas relações R e S Os valores de um atributo (ou mais) de R que se relacionam com todos os valores de um atributo (ou mais) de S Utilizada para consultas que incluam o termo para todos ou em todos Requer que R tenha mais atributos que S e pelo menos um atributo em comum DCC011 - profa. Mirella M. Moro 12

3 Divisão: Exemplos Quais pessoas possuem contas bancárias em TODOS os bancos estatais do país? Não se sabe quantos bancos são ou quais são, então não é possível fazer uma condição de seleção primeiro Quais pessoas possuem cartão de fidelidade para TODAS as companhias aéreas brasileiras? Quais estudantes se matricularam em TODAS as disciplinas ofertadas pela profa Mirella? Quais estudantes se matricularam em TODAS as disciplinas de primeiro semestre oferecidas em 20172? Quais meninas se matricularam em TODAS as disciplinas nas quais o príncipe William se matriculou? Quais genomas possuem TODAS as características presentes na proteína X? DCC011 - profa. Mirella M. Moro 13 Outro Exemplo: Liste os códigos dos clientes que já foram atendidos por todos os vendedores. Esquema: Se o cliente foi atendido apenas por um dos vendedores, não entra no resultado. É necessário ter sido atendido por todos os dois. Fonte: Profa. Cristina Ciferri, ICMC/USP São Carlos DCC011 - profa. Mirella M. Moro 14 Exemplos de A B (ou A/B) Database Management Systems, R. Ramakrishnan (tradução, autorizada, de Anna & Mario Nascimento) DCC011 - profa. Mirella M. Moro 15 AS σ sexo=f (ALUNOS) Matr Nome Sexo Cr 1 A F CC 4 D F MC 7 G F SI 8 H F SI M π Matr,Disc,Sem (MATRICULAS ALUNAS) Matr Disc Sem 1 DCC DCC DCC DCC DCC DCC DCC DCC DCC DCC DCC DCC Alunas que se matricularam em todos os semestres a. AS M NÃO FUNCIONA (sem denominador comum) b. π Matr,Nome AS π Sem M NÃO FUNCIONA (sem denominador comum) c. π Matr,Sem M π Sem M Retorna Matr de todos os semestres d. π Nome (AS (π Matr,Sem M π Sem M) ) Retorna Nome matriculado em todos semestres Alunas matriculadas nas mesmas disciplinas de 1 a. π Matr,Disc M π Disc σ Matr=1 (M) Agora, no mesmo semestre b. π Matr,Disc M π Disc,Sem σ Matr=1 (M) NÃO FUNCIONA (sem denominador comum) c. π Matr,Disc,Sem M π Disc,Sem σ Matr=1 (M) DCC011 - profa. Mirella M. Moro 16 Divisão: Exemplos R (matr, disc) S (disc) os números de matrícula em R que se relacionam com todos os valores de disciplina em S. O resultado é apenas a coluna matr(pense que na divisão tem disc no numerador e no denominador, então corta ). Traduzindo para expressões algébricas: Esquema: MATRICULAS (matr, disc, sem) ALUNOS (matr, nome, curso) 1.(π matr, disc MATRICULAS) (π disc σ sem=20172 MATRICULAS) número de matrícula dos alunos matriculados em todas as disciplinas oferecidas no semestre de ((π matr, disc (MATRICULAS(σ curso=cc ALUNOS))) (π disc σ sem=20172 MATRICULAS) número de matrícula dos alunos da Computação matriculados em todas as disciplinas oferecidas no semestre DCC011 - profa. Mirella M. Moro Regras de Precedência Precedência dos operadores relacionais: 1.[σ, π, ρ] (mais alta) 2.[Χ, ] 3. 4.[, ] DCC011 - profa. Mirella M. Moro 18

4 3. Junção: Natural, EquiJoin, OuterJoin, SelfJoin Produz uma tabela composta de duas outras que se relacionam A operação de junção deriva da combinação das operações de produto cartesiano e seleção, sendo executadas conjuntamente. Também chamada de Join Junção Natural Conecta duas relações R e S: Conjunção da igualdade de pares de atributos de mesmo nome Projeta uma cópia de cada par dos atributos igualados Notação: R S DCC011 - profa. Mirella M. Moro 19 DCC011 - profa. Mirella M. Moro 20 Junção Natural R S EquiJoin / EquiJunção Junção em que a condição da junção tem a forma R. nome1 = S. nome2 Teste de igualdade em dois campos com nomes diferentes (um campo de cada relação) Notação: R R.nome1=S.nome2 S Resultado: nome1 e nome2 estarão no esquema final DCC011 - profa. Mirella M. Moro 21 DCC011 - profa. Mirella M. Moro 22 OuterJoin / Junção Externa Para junções naturais, apenas as tuplas de R que também estão em S e vice-versa, são selecionadas. OuterJoin: Permite que tuplas forada junção sejam selecionadas com valores nulos para seus atributos 1. Realiza a junção normal entre as duas relações 2. Adiciona as linhas que ficaram de fora (do resultado da junção natural) preenchendo os valores de fora da junção com NULL Notação: R R.nome1=S.nome2 S OuterJoin à esquerda R S OuterJoin natural à direita (condição implícita tal como junção natural) Junção Natural, EquiJoin, OuterJoin T1 T2 T3 A B X 1 B C 1 D C D D a E b G c DCC011 - profa. Mirella M. Moro 23 DCC011 - profa. Mirella M. Moro 24

5 Junção Natural, EquiJoin, OuterJoin T1 T2 T3 A B X 1 Todas as tuplas de T1 que satisfazem ou não a junção B C 1 D C D D a E b G c Todas as tuplas de T2 que satisfazem ou não a junção Ambos os lados também é possível A B B C X 1 1 D D a b G c DCC011 - profa. Mirella M. Moro 25 SelfJoin Usando Sells(bar, beer, price), encontre os bares que vendem dois tipos diferentes de cerveja a mesmo preço Estratégia: usando renomeação, definir uma cópia de Sells S(bar, beer1, price) S (bar,beer1,price) Sells σ beer<>beer1 (S Sells) A junção natural de Selle S consiste de (bar, beer, beer1, price), tal que o bar vendo as mesmas cervejas a mesmo preço DCC011 - profa. Mirella M. Moro Esquemas Resultantes União, intersecção e diferença Os esquemas dos dois operandos devem ser o mesmo, e o resultante é o mesmo também Seleção O esquema resultante é o mesmo do esquema do operando Projeção A lista de atributos informa o esquema Esquemas Resultantes Produto O esquema é formado pelos atributos das duas relações Usa R.A, etc., para distinguir atributos com nome A Join Mesmo que produto Natural join União dos atributos das duas relações Renaming O operador define o esquema DCC011 - profa. Mirella M. Moro 27 DCC011 - profa. Mirella M. Moro 28 Paciente(CodPac,NomePac,DataNascPac) Internação(CodPac,NumeroIntern, DtHBaixa,DtHAlta) CodPac referencia Paciente Leito (NoLeito,CodigoQuarto,TipoLeito) OcupaLeito (CodPac, NumeroIntern, NoLeito, DataHoraInic, DataHoraFim) (CodPac,NumeroIntern) referencia Internação; NoLeito referencia Leito Parto (CodPac, HoraNasc, TipoParto, CodPacMae, NumeroIntern) CodPac referencia Paciente; CodPacMae,NumeroIntern referencia Internação 1.Obter uma tabela com as Datas de Nascimento e as Data/Hora das internações (baixas) dos pacientes de nome José e que ocuparam o leito número Faça uma consulta que retorne uma tabela com os nomes dos pacientes, as respectivas Data/Hora das baixas e números dos leitos ocupados. Se um paciente foi internado mas não precisou usar um leito, seu nome e respectiva Data e Hora da internação devem aparecer na tabela resultante seguido do respectivo campo NoLeito em branco 3. O hospital está sendo processado por troca de bebês na maternidade. O ministério público solicitou uma tabela com duas colunas, onde na primeira aparece o nome dos bebês nascidos no hospital e na Segunda coluna o nome das respectivas mães. Faça uma consulta que retorne essa tabela. 4. Obtenha os códigos de pacientes que foram internados no hospital que nunca foram mães no hospital (nunca tiveram bebês no hospital). 5. Obter os nomes dos pacientes que nunca foram internados. Primeiro de tudo DCC011 - profa. Mirella M. Moro 30

6 1 Obter uma tabela com as Datas de Nascimento e as Data/Hora das internações (baixas) dos pacientes de nome José e que ocuparam o leito número Faça uma consulta que retorne uma tabela com os nomes dos pacientes, as respectivas Data/Hora das baixas e números dos leitos ocupados. Se um paciente foi internado mas não precisou usar um leito, seu nome e respectiva Data e Hora da internação devem aparecer na tabela resultante seguido do respectivo campo NoLeito em branco DCC011 - profa. Mirella M. Moro 31 DCC011 - profa. Mirella M. Moro 32 3 O hospital está sendo processado por troca de bebês na maternidade. O ministério público solicitou uma tabela com duas colunas, onde na primeira aparece o nome dos bebês nascidos no hospital e na Segunda coluna o nome das respectivas mães. Faça uma consulta que retorne essa tabela. 4 Obtenha os códigos de pacientes que foram internados no hospital que nunca foram mães no hospital (nunca tiveram bebês no hospital). DCC011 - profa. Mirella M. Moro 33 DCC011 - profa. Mirella M. Moro 34 5 Obter os nomes dos pacientes que nunca foram internados. DCC011 - profa. Mirella M. Moro 35

Álgebra Relacional. Programa. Modelos de Dados. LCs relacionais formais. Introdução

Álgebra Relacional. Programa. Modelos de Dados. LCs relacionais formais. Introdução Programa DCC011 Introdução a Banco de Dados Álgebra Relacional Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br Introdução Conceitos básicos,

Leia mais

António Rocha Nuno Melo e Castro

António Rocha Nuno Melo e Castro António Rocha Nuno Melo e Castro Definição: colecção de operadores que tomam relações como seus operandos e retornam relações como resultados Cada operador da álgebra aceita como argumentos instâncias

Leia mais

Faculdade Pitágoras Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet

Faculdade Pitágoras Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Faculdade Pitágoras Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan Unidade 6.2 Álgebra Relacional - Junção PACIENTE cod-pac

Leia mais

- SQL Linguagem de Manipulação de Dados

- SQL Linguagem de Manipulação de Dados - SQL Linguagem de Manipulação de Dados Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri SELECT SELECT FROM [ WHERE predicado

Leia mais

Álgebra Relacional e SQL

Álgebra Relacional e SQL Álgebra Relacional e SQL Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Álgebra Relacional Maneira teórica de se manipular o banco de dados relacional Linguagem de consulta procedural usuários

Leia mais

O Modelo e a Álgebra Relacional

O Modelo e a Álgebra Relacional O Modelo e a Álgebra Relacional O Modelo Relacional Modelo de dados, que se baseia no princípio em que todos os dados estão guardados em tabelas Baseado em lógica de predicados e na teoria de conjuntos.

Leia mais

Operações da Álgebra Relacional Operadores Especiais da Álgebra Relacional Renomeação

Operações da Álgebra Relacional Operadores Especiais da Álgebra Relacional Renomeação BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br ROTEIRO Operações

Leia mais

Álgebra Relacional e SQL operações de interesse

Álgebra Relacional e SQL operações de interesse Álgebra Relacional e SQL operações de interesse Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Álgebra Relacional Maneira teórica de se manipular o banco de dados relacional Linguagem de consulta

Leia mais

Aula 8 BD1 Álgebra Relacional. Profa. Elaine Faria UFU

Aula 8 BD1 Álgebra Relacional. Profa. Elaine Faria UFU Aula 8 BD1 Álgebra Relacional Profa. Elaine Faria UFU - 2018 Introdução Linguagens de consulta formais associadas ao modelo relacional Álgebra Usa uma coleção de operadores e cada consulta descreve um

Leia mais

Bancos de Dados Notas de Aula Álgebra Relacional Introdução Prof. Dr. Daniel A. Furtado

Bancos de Dados Notas de Aula Álgebra Relacional Introdução Prof. Dr. Daniel A. Furtado Bancos de Dados Notas de Aula Álgebra Relacional Introdução Prof. Dr. Daniel A. Furtado 1 SELEÇÃO (SELECT): Seleciona todas as tuplas de uma relação R que satisfazem uma condição. Notação: Operadores de

Leia mais

ALGEBRA RELACIONAL. Álgebra Relacional Conjunto básico de operações para o Modelo Relacional O resultado é uma relação

ALGEBRA RELACIONAL. Álgebra Relacional Conjunto básico de operações para o Modelo Relacional O resultado é uma relação 1/5 Universidade Federal da Bahia Disciplina: Banco de Dados Prof a. Daniela Barreiro Claro ALGEBRA RELACIONAL Duas linguagens formais do Modelo Relacional o Álgebra Relacional e Cálculo Relacional Álgebra

Leia mais

Modelo Relacional. Relacionamento. Processo de Projeto de. Programa. Modelo Entidade Relacionamento

Modelo Relacional. Relacionamento. Processo de Projeto de. Programa. Modelo Entidade Relacionamento Programa DCC011 Introdução a Banco de Dados Modelo Relacional Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br Introdução Conceitos básicos,

Leia mais

Modelo Relacional - Manipulação

Modelo Relacional - Manipulação Modelo Relacional - Manipulação Duas categorias de linguagens formais álgebra relacional e cálculo relacional comerciais (baseadas nas linguagens formais) SQL Linguagens formais - Características orientadas

Leia mais

ANÁLISE E PROJETO DE BANCO DE DADOS

ANÁLISE E PROJETO DE BANCO DE DADOS ANÁLISE E PROJETO DE BANCO DE DADOS ÁLGEBRA E CÁLCULO RELACIONAL FELIPE G. TORRES APRESENTAÇÃO Avaliações AV1 AV2 TRAB1 TRAB2 REFERÊNCIAS GRAVES, M. Projeto de Banco de Dados com XML. São Paulo: Makron

Leia mais

ÁLGEBRA E CÁLCULO RELACIONAL

ÁLGEBRA E CÁLCULO RELACIONAL UNINGÁ UNIDADE DE ENSINO SUPERIOR INGÁ FACULDADE INGÁ DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO ERINALDO SANCHES NASCIMENTO ÁLGEBRA E CÁLCULO RELACIONAL MARINGÁ 2014 SUMÁRIO SUMÁRIO...1 1 INTRODUÇÃO...2 1.1

Leia mais

Introdução. Introdução. Álgebra Relacional. Linguagens formais de Consulta Modelo Relacional. O que foi visto até agora...

Introdução. Introdução. Álgebra Relacional. Linguagens formais de Consulta Modelo Relacional. O que foi visto até agora... Ciência da Computação GBC043 Sistemas de Banco de Dados Linguagens formais de Consulta Modelo Relacional Profa. Maria Camila Nardini Barioni camila.barioni@ufu.br Bloco B - sala 1B137 1 semestre de 2019

Leia mais

Banco de Dados Prof. Célio R. Castelano Página 1 de 9. Álgebra Relacional

Banco de Dados Prof. Célio R. Castelano Página 1 de 9. Álgebra Relacional Banco de Dados Prof. Célio R. Castelano Página 1 de 9 Álgebra Relacional A álgebra relacional é uma linguagem procedural, que possui uma coleção de operações que são utilizadas para manipular relações

Leia mais

Banco de Dados. Álgebra Relacional. João Eduardo Ferreira Osvaldo Kotaro Takai Marcelo Finger

Banco de Dados. Álgebra Relacional. João Eduardo Ferreira Osvaldo Kotaro Takai Marcelo Finger Banco de Dados Álgebra Relacional João Eduardo Ferreira Osvaldo Kotaro Takai Marcelo Finger Tópicos Apresentação Seleção Projeção Renomeio de Atributos União, Subtração e operações de conjuntos Junção:

Leia mais

Universidade Veiga de Almeida

Universidade Veiga de Almeida Banco de Dados II Universidade Veiga de Almeida Banco de Dados II Prof. Luiz Antônio Vivacqua C. Meyer (luiz.vcm@gmail.com) Linguagens de Consulta Linguagens nas quais os usuários fazem requisições de

Leia mais

Banco de Dados I. Prof. Diego Buchinger. Profa. Rebeca Schroeder Freitas Prof. Fabiano Baldo.

Banco de Dados I. Prof. Diego Buchinger. Profa. Rebeca Schroeder Freitas Prof. Fabiano Baldo. Banco de Dados I Prof. Diego Buchinger diego.buchinger@outlook.com diego.buchinger@udesc.br Profa. Rebeca Schroeder Freitas Prof. Fabiano Baldo Álgebra Relacional Modelo Relacional - Manipulação Categorias

Leia mais

Modelo Relacional: Banco de Dados: coleção de relações cada relação tem um nome único.

Modelo Relacional: Banco de Dados: coleção de relações cada relação tem um nome único. Banco de Dados / 1 Bacharelado em Sistemas de Informação BANCOS DE DADOS Aula 13 Álgebra Relacional Introdução Banco de Dados / 2 Recordando... Modelo Relacional: Banco de Dados: coleção de relações cada

Leia mais

Unipar Universidade Paranaense Disciplina: Banco de Dados II 3ª Série Profª: Késsia Marchi Profa. Késsia Marchi

Unipar Universidade Paranaense Disciplina: Banco de Dados II 3ª Série Profª: Késsia Marchi Profa. Késsia Marchi Banco de Dados II Unipar Universidade Paranaense Disciplina: Banco de Dados II 3ª Série Profª: Késsia Marchi Álgebra Relacional Linguagem de consulta procedural; Consiste em um conjunto básico de operações,

Leia mais

Álgebra Relacional. Linguagem de consultas procedural Conjunto de operações que usam uma ou duas relações como entrada e geram uma relação de saída

Álgebra Relacional. Linguagem de consultas procedural Conjunto de operações que usam uma ou duas relações como entrada e geram uma relação de saída Algebra Relacional Adaptado de Karine Reis Ferreira karine@dpi.inpe.br Gilberto Câmara gilberto@dpi.inpe.br Gilberto Ribeiro de Queiroz gribeiro@dpi.inpe.br Álgebra Relacional Linguagem de consultas procedural

Leia mais

IEC Banco de Dados I Aula 06 Álgebra Relacional

IEC Banco de Dados I Aula 06 Álgebra Relacional IEC Banco de Dados I Aula 06 Álgebra Relacional Turmas: Sistemas de Informação Professora: André Luiz da Costa Carvalho E- mail: andre@icomp.ufam.edu.br Ambiente virtual: hlp://bdufam.wordpress.com Sumário

Leia mais

Tornou-se um padrão de fato para aplicações comerciais, devido a sua simplicidade e performance.

Tornou-se um padrão de fato para aplicações comerciais, devido a sua simplicidade e performance. Histórico Foi introduzido por Codd (1970) Tornou-se um padrão de fato para aplicações comerciais, devido a sua simplicidade e performance. É um modelo formal, baseado na teoria matemática das relações

Leia mais

Bancos (Bases) de Dados Aula #7 Álgebra Relacional

Bancos (Bases) de Dados Aula #7 Álgebra Relacional Bancos (Bases) de Dados Aula #7 Álgebra Relacional Cálculo Relacional Prof. Eduardo R. Hruschka * Slides baseados no material elaborado pelas professoras: Cristina D. A. Ciferri Elaine P. M. de Souza Álgebra

Leia mais

Curso EFA Tecnológico Técnico de Informática e Sistemas. - Álgebra Relacional - João Leitão

Curso EFA Tecnológico Técnico de Informática e Sistemas. - Álgebra Relacional - João Leitão Curso EFA Tecnológico Técnico de Informática e Sistemas - Álgebra Relacional - João Leitão Linguagens relacionais Notações para expressar perguntas: algébrica aplicação de operadores a relações lógica

Leia mais

Rápida revisão do Modelo Relacional

Rápida revisão do Modelo Relacional Rápida revisão do Modelo Relacional Conceito de relação Tuplas e atributos Rápida revisão do Modelo Relacional Regras de integridade Entidade: Deve existir uma chave primária com valor único e não-nulo.

Leia mais

Álgebra Relacional. Introdução. Introdução. Álgebra Relacional

Álgebra Relacional. Introdução. Introdução. Álgebra Relacional Pós-graduação em Ciência da Computação CCM-205 Sistema de Bancos de Dados O que foi visto até agora... Álgebra Relacional Profa. Maria Camila Nardini Barioni camila.barioni@ufabc.edu.br Bloco B - sala

Leia mais

Banco de Dados. Álgebra Relacional. João Eduardo Ferreira Osvaldo Kotaro Takai

Banco de Dados. Álgebra Relacional. João Eduardo Ferreira Osvaldo Kotaro Takai Banco de Dados Álgebra Relacional João Eduardo Ferreira Osvaldo Kotaro Takai Introdução A Álgebra Relacional contempla um conjunto de operações que permitem especificar consultas sob relações. As operações

Leia mais

Banco de Dados I Módulo III: Linguagens de Consulta. (Aula 1) Clodis Boscarioli

Banco de Dados I Módulo III: Linguagens de Consulta. (Aula 1) Clodis Boscarioli Banco de Dados I 2007 Módulo III: Linguagens de Consulta (Aula 1) Clodis Boscarioli Conteúdo do Módulo: Linguagens de Consulta Formais Álgebra Relacional; Cálculo Relacional de Tupla; Cálculo Relacional

Leia mais

Linguagem de Consulta/Interrogação

Linguagem de Consulta/Interrogação Linguagem de Consulta/Interrogação Álgebra Relacional Linguagem a que o utilizador recorre para obter informação a partir da base de dados. Categorias de linguagens Linguagens Teóricas Procedimentais Declarativas

Leia mais

ROTEIRO Introdução Álgebra e Cálculo Relacional Operações da Álgebra Relacional Classificação de Operadores da Álgebra Relacional Mapeamento AR -> SQL

ROTEIRO Introdução Álgebra e Cálculo Relacional Operações da Álgebra Relacional Classificação de Operadores da Álgebra Relacional Mapeamento AR -> SQL BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br ROTEIRO Introdução

Leia mais

Bases de Dados. Álgebra Relacional. Selecção (σ) Seleccionar os tuplos que satisfazem uma condição. exemplo: empréstimos da agência de Perryridge

Bases de Dados. Álgebra Relacional. Selecção (σ) Seleccionar os tuplos que satisfazem uma condição. exemplo: empréstimos da agência de Perryridge Bases de Dados Álgebra Relacional Selecção (σ) Seleccionar os tuplos que satisfazem uma condição exemplo: empréstimos da agência de Perryridge σ branch_name = Perryridge (loan) 2 1 Outros exemplos de selecção

Leia mais

4. Projecto de Bases de Dados

4. Projecto de Bases de Dados SI MIEIG 7-8 1 4. Projecto de Bases de Dados 4.1 Introdução aos SGBD - Sistemas de Gestão de Bases de Dados 4.2 Sistemas Relacionais e Linguagem SQL 4.3 Normalização Funcional de Dados para Concepção de

Leia mais

Modelo Entidade Relacionamento

Modelo Entidade Relacionamento Programa DCC0 Introdução a Banco de Dados Modelo Entidade Relacionamento Mirella M. Moro de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br Introdução Conceitos básicos,

Leia mais

Roteiro. Álgebra Relacional e Cálculo Relacional. BCC321 - Banco de Dados I. Introdução. Ementa. Posicionamento. Introdução

Roteiro. Álgebra Relacional e Cálculo Relacional. BCC321 - Banco de Dados I. Introdução. Ementa. Posicionamento. Introdução Roteiro Álgebra Relacional e Cálculo Relacional Posicionamento Luiz Henrique de Campos Merschmann Departamento de Computação Universidade Federal de Ouro Preto luizhenrique@iceb.ufop.br www.decom.ufop.br/luiz

Leia mais

Aula 11 SBD SQL Parte 3. Profa. Elaine Faria UFU

Aula 11 SBD SQL Parte 3. Profa. Elaine Faria UFU Aula 11 SBD SQL Parte 3 Profa. Elaine Faria UFU - 2018 Group by e Having Às vezes deseja-se aplicar operações agregadas a cada um dos vários grupos de linhas em um relação Group by e Having C31: Encontre

Leia mais

1. E 1 R 1 X R 2 (equi-join) C = D

1. E 1 R 1 X R 2 (equi-join) C = D UERJ FACULDADE DE ENGENHARIA DEPARTAMENTO DE ENGENHARIA DE SISTEMAS E COMPUTAÇÃO ENGENHARIA DE SISTEMAS B A. Considere as seguintes relações: R 1 (A:Dom 1; B:Dom 2; C:Dom 3) R 2 (D:Dom 3; E:Dom 4) R 3

Leia mais

Operações fundamentais são suficientes para expressar qualquer consulta. Problema: consultas muito longas. Solução: definição de operações adicionais

Operações fundamentais são suficientes para expressar qualquer consulta. Problema: consultas muito longas. Solução: definição de operações adicionais Banco de Dados / 1 Bacharelado em Sistemas de Informação BANCOS DE DADOS Aula 15 Álgebra Relacional Operações Adicionais Banco de Dados / 2 Operações Adicionais Operações fundamentais são suficientes para

Leia mais

Bases de Dados 2013/2014 Álgebra Relacional. Helena Galhardas 2013 IST. Bibliografia. Raghu Ramakrishnan, Database Management Systems, Cap.

Bases de Dados 2013/2014 Álgebra Relacional. Helena Galhardas 2013 IST. Bibliografia. Raghu Ramakrishnan, Database Management Systems, Cap. Bases de Dados 2013/2014 Álgebra Relacional Helena Galhardas Bibliografia Raghu Ramakrishnan, Database Management Systems, Cap. 4 1 1 Álgebra Relacional Sumário 2 Linguagens Formais de Interrogação Relacionais

Leia mais

Banco de Dados. Aula 8 - Prof. Bruno Moreno 16/09/2011

Banco de Dados. Aula 8 - Prof. Bruno Moreno 16/09/2011 Banco de Dados Aula 8 - Prof. Bruno Moreno 16/09/2011 Plano de Aula Operações Unárias Seleção Projeção Operações de seleção e projeção seqüenciadas Operação Rebatizar Operações Binárias União Interseção

Leia mais

Bases de Dados. Álgebra Relacional. Selecção (σ) Seleccionar os registos que satisfazem uma condição exemplo: empréstimos da agência de Perryridge

Bases de Dados. Álgebra Relacional. Selecção (σ) Seleccionar os registos que satisfazem uma condição exemplo: empréstimos da agência de Perryridge Bases de Dados Álgebra Relacional Selecção (σ) Seleccionar os registos que satisfazem uma condição exemplo: empréstimos da agência de Perryridge σ branch_name = Perryridge (loan) 2 1 Outros exemplos de

Leia mais

07/08/2008. Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional 1 Prof.: Fernando Hadad Zaidan

07/08/2008. Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional 1 Prof.: Fernando Hadad Zaidan Faculdade IED Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional Prof.: Fernando Hadad Zaidan Unidade Álgebra Relacional 2 Leitura Obrigatória ELMASRI, R.;

Leia mais

Bases de Dados Uma Recordação da Algebra Relacional

Bases de Dados Uma Recordação da Algebra Relacional Bases de Dados Uma Recordação da Algebra Relacional Caetano Traina Jr. Grupo de Bases de Dados e Imagens Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo - São Carlos caetano@icmc.usp.br

Leia mais

Álgebra e cálculo relacional. Andre Noel

Álgebra e cálculo relacional. Andre Noel Álgebra e cálculo relacional Andre Noel Introdução Introdução A SQL é baseada na álgebra e no cálculo relacional Introdução A SQL é baseada na álgebra e no cálculo relacional O modelo de dados precisa

Leia mais

TABELA ENTIDADE LINHA OCORRÊNCIA DA ENTIDADE COLUNA ATRIBUTO DA ENTIDADE

TABELA ENTIDADE LINHA OCORRÊNCIA DA ENTIDADE COLUNA ATRIBUTO DA ENTIDADE TABELA ENTIDADE LINHA OCORRÊNCIA DA ENTIDADE COLUNA ATRIBUTO DA ENTIDADE CARACTERISTICA DE UMA TABELA: NÃO EXISTEM DUAS LINHAS IGUAIS A ORDEM DAS LINHAS É INSIGNIFICANTE A ORDEM DAS COLUNAS É INSIGNIFICANTE

Leia mais

Faculdade Pitágoras. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet. Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan

Faculdade Pitágoras. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet. Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan Faculdade Pitágoras Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan Unidade 6.2 Álgebra Relacional - 1 PACIENTE cod-pac nome-pac

Leia mais

Bases de Dados. Parte IV: Álgebra e Cálculo Relacional

Bases de Dados. Parte IV: Álgebra e Cálculo Relacional Bases de Dados MI / LCC / LEG / LERSI / LMAT Parte IV Álgebra e Cálculo Relacional Álgebra Relacional Conjunto básico de operações que nos permitem manipular relações no modelo relacional. As operações

Leia mais

Modelo Relacional. Aula 02

Modelo Relacional. Aula 02 Aula 02 Modelo Relacional É um modelo baseado em relações, seus dados no BD são representados através de tabelas, ou seja, sua coleção ou relação recebe cada uma um nome único. Revisando: Dados: é o conteúdo

Leia mais

SQL - Perguntas. André Restivo. Faculdade de Engenharia da Universidade do Porto. February 24, 2012

SQL - Perguntas. André Restivo. Faculdade de Engenharia da Universidade do Porto. February 24, 2012 SQL - Perguntas André Restivo Faculdade de Engenharia da Universidade do Porto February 24, 2012 André Restivo (FEUP) SQL - Perguntas February 24, 2012 1 / 46 Sumário 1 Introdução 2 Seleccionar e Filtrar

Leia mais

Prova de Fundamentos de Bancos de Dados 1 a Prova

Prova de Fundamentos de Bancos de Dados 1 a Prova Prova de Fundamentos de Bancos de Dados 1 a Prova Prof. Carlos A. Heuser Abril de 2007 Prova sem consulta duas horas de duração 1. (Peso 2,5 Uma imobiliária deseja montar uma base de dados contendo os

Leia mais

Modelo Relacional Álgebra Relacional

Modelo Relacional Álgebra Relacional Modelo Relacional Álgebra Relacional Aulas 1 e 2 12/11/2012 e 13/11/2012 Material original: Raghu Ramakrishnan Tradução : Mario Nascimento University of Alberta (Canada) Alguns slides de autoria de Sandra

Leia mais

TECNOLOGIA EM SISTEMAS PARA INTERNET. Banco de dados em aplicativos WEB. Aula 5

TECNOLOGIA EM SISTEMAS PARA INTERNET. Banco de dados em aplicativos WEB. Aula 5 TECNOLOGIA EM SISTEMAS PARA INTERNET Banco de dados em aplicativos WEB Aula 5 1 Álgebra Relacional Agenda Operação Rename / Renomear Teoria de conjuntos Intersecção de conjuntos Operação de produto cartesiano

Leia mais

Sumário SELECT + FROM

Sumário SELECT + FROM Sumário 1 Introdução SQL - Perguntas André Restivo Faculdade de Engenharia da Universidade do Porto October 18, 2010 2 3 Operadores de Conjuntos 4 5 Agregações 6 Ordenações e Limites 7 Sub-perguntas 8

Leia mais

BCD29008 Banco de dados

BCD29008 Banco de dados BCD29008 Banco de dados Modelo ER & Modelo Relacional Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/bcd 18 de

Leia mais

DCC011 Introdução a Banco de Dados

DCC011 Introdução a Banco de Dados DCC011 Introdução a Banco de Dados SQL select avançado Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br Revisão: consultas básicas Formato

Leia mais

Introdução a. π LNAME, FNAME (σ SALARY>C (EMPLOYEE))

Introdução a. π LNAME, FNAME (σ SALARY>C (EMPLOYEE)) Introdução Como o SGBD INTERNAMENTO processa, otimiza e executa consultas de alto nível Introdução a Processamento de Consultas MIRELLA M. MORO mirella@dcc.ufmg.br http://www.dcc.ufmg.br/ br/~mirella 2

Leia mais

Banco de Dados I Álgebra Relacional

Banco de Dados I Álgebra Relacional Banco de Dados I Álgebra Relacional Frederico Queiroga fredericoqueiroga@gmail.com https://sites.google.com/site/fredericoqueiroga/ Álgebra Relacional Álgebra Relacional: conjunto de operações que podem

Leia mais

UNIVERSIDADE FEDERAL DA GRANDE DOURADOS PRÓ-REITORIA DE GRADUAÇÃO PROGRAD FACULDADE DE CIÊNCIAS EXATAS E TECNOLOGIA CURSO DE SISTEMAS DE INFORMAÇÃO

UNIVERSIDADE FEDERAL DA GRANDE DOURADOS PRÓ-REITORIA DE GRADUAÇÃO PROGRAD FACULDADE DE CIÊNCIAS EXATAS E TECNOLOGIA CURSO DE SISTEMAS DE INFORMAÇÃO UNIVERSIDADE FEDERAL DA GRANDE DOURADOS PRÓ-REITORIA DE GRADUAÇÃO PROGRAD FACULDADE DE CIÊNCIAS EXATAS E TECNOLOGIA CURSO DE SISTEMAS DE INFORMAÇÃO Disciplina: Banco de Dados I Professor: Prof. Me. Everton

Leia mais

DCC011 Introdução a Banco de Dados Definição do Trabalho Final

DCC011 Introdução a Banco de Dados Definição do Trabalho Final DCC011 Introdução a Banco de Dados Definição do Trabalho Final Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br INTRODUÇÃO O objetivo deste

Leia mais

Revisão e Exercícios. Relacionamento. Projeto de Bancos de Dados. Chave e Domínio. Tipos de Atributos

Revisão e Exercícios. Relacionamento. Projeto de Bancos de Dados. Chave e Domínio. Tipos de Atributos Projeto de Bancos de Dados Mini Mundo DCC011 Revisão e Exercícios Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br Independente de SGBD Específico

Leia mais

Base de Dados. Sistemas de Informação. Base de Dados - Índice Introdução Componentes Base de Dados. Introdução. Introdução. Introdução.

Base de Dados. Sistemas de Informação. Base de Dados - Índice Introdução Componentes Base de Dados. Introdução. Introdução. Introdução. - Índice Componentes Sistemas de Informação Vitor Vaz da Silva Vitor Vaz da Silva - SI http://tektonia.com 2 Vitor Vaz da Silva - SI http://tektonia.com 3 Vitor Vaz da Silva - SI http://tektonia.com 4

Leia mais

Banco de Dados I. Aula 9 - Prof. Bruno Moreno 20/09/2011

Banco de Dados I. Aula 9 - Prof. Bruno Moreno 20/09/2011 Banco de Dados I Aula 9 - Prof. Bruno Moreno 20/09/2011 Operações Binárias União (UNION) Interseção (INTERSECTION) Subtração (MINUS) Produto Cartesiano Junção (JOIN) Divisão (DIVISION) Aula passada! REVISÃO

Leia mais

Processamento e Otimização de Consultas

Processamento e Otimização de Consultas Processamento e Otimização de Consultas Processo de Execução de uma Consulta 1 Otimização de Consultas SQL Em algumas linguagens de consulta, a estratégia de execução é definida pela maneira como o usuário

Leia mais

Conteúdo Segunda Prova. Revisão Segunda Prova. Relembrando: operações. Álgebra Relacional. Seleção. Projeção. Data da prova: 23/05.

Conteúdo Segunda Prova. Revisão Segunda Prova. Relembrando: operações. Álgebra Relacional. Seleção. Projeção. Data da prova: 23/05. Ciência da Computação GBC043 Sistemas de Banco de Dados Revisão Segunda Prova Profa. Maria Camila Nardini Barioni camila.barioni@ufu.br Bloco B - sala 1B137 Conteúdo Segunda Prova Álgebra Relacional SQL

Leia mais

Álgebra Relacional. Linguagens de consultas relacionais

Álgebra Relacional. Linguagens de consultas relacionais Álgebra Relacional 1 Linguagens de consultas relacionais Linguagens de consultas: Permitem manipulação e recuperação de dados de um BD. O modelo relacional suporta LCs simples e poderosas: Forte fundamentação

Leia mais

Um modelo por si próprio não pode realizar qualquer unidade de trabalho útil. É apenas uma representação da realidade.

Um modelo por si próprio não pode realizar qualquer unidade de trabalho útil. É apenas uma representação da realidade. 2. Modelo Relacional... 2.1. Estrutura de Dados Relacional... 2.2. Álgebra Relacional Um modelo por si próprio não pode realizar qualquer unidade de trabalho útil. É apenas uma representação da realidade.

Leia mais

Bases de Dados. Parte IV. Álgebra e Cálculo Relacional

Bases de Dados. Parte IV. Álgebra e Cálculo Relacional Bases de Dados Parte IV Álgebra e Cálculo Relacional Ricardo Rocha DCC-FCUP 1 Álgebra Relacional Conjunto básico de operações que nos permitem manipular relações no modelo relacional. As operações da álgebra

Leia mais

- Um "query block" permite a implementação das operações de selecção, projecção e junção da álgebra relacional.

- Um query block permite a implementação das operações de selecção, projecção e junção da álgebra relacional. 2.3 Linguagens relacionais (continuação) SQL Structured Query Language 1) "Query block" Select From Where - Um "query block" permite a implementação

Leia mais

SISTEMAS DE BANCO DE DADOS. Prof. Adriano Pereira Maranhão

SISTEMAS DE BANCO DE DADOS. Prof. Adriano Pereira Maranhão SISTEMAS DE BANCO DE DADOS Prof. Adriano Pereira Maranhão 1 Coleção de operações usadas para manipular relações Grupos de operações Operações relacionais Seleção; projeção; junção Operações de conjunto

Leia mais

Sumário. Etapas do Processamento de Consultas

Sumário. Etapas do Processamento de Consultas Sumário 1 Introdução ao Processamento de Consultas 2 Otimização de Consultas 3 Plano de Execução de Consultas 4 Introdução a Transações 5 Recuperação de Falhas 6 Controle de Concorrência 7 Fundamentos

Leia mais

Álgebra Relacional e Cálculo Relacional

Álgebra Relacional e Cálculo Relacional SISTEMAS DE INFORMAÇÃO Álgebra Relacional e Cálculo Relacional Prof. Edson Thizon Linguagens de consultas formais (1) Uma linguagem de consulta (Query Language) é uma linguagem com a qual o usuário pode

Leia mais

Bases de Dados. Parte IV

Bases de Dados. Parte IV Bases de Dados Parte IV Álgebra e Cálculo Relacional (Estes slides são a continuidade evolutiva dos slides de Ricardo Rocha (2005-2014) e de Fernando Silva (1995-2000), e são baseados no livro de Elmasri

Leia mais

DCC011 Introdução a Banco de Dados SQL gerenciar tabelas e dados

DCC011 Introdução a Banco de Dados SQL gerenciar tabelas e dados DCC011 Introdução a Banco de Dados SQL gerenciar tabelas e dados Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br Programa Introdução Conceitos

Leia mais

Exame de Recurso de Base de Dados Universidade do Algarve 03/Fev/2005, (duração: 2 horas)

Exame de Recurso de Base de Dados Universidade do Algarve 03/Fev/2005, (duração: 2 horas) Exame de Recurso de Base de Dados Universidade do Algarve 03/Fev/2005, (duração: 2 horas) Este exame consiste em 16 perguntas de escolha múltipla. Para todas as questões existe apenas 1 resposta correcta.

Leia mais

Modelo Relacional Wendel Melo

Modelo Relacional Wendel Melo Wendel Melo Faculdade de Computação Universidade Federal de Uberlândia www.facom.ufu.br/~wendelmelo Banco de Dados I 2 Proposto por Ted Codd em 1970; Se tornou padrão nos principais SGBD s de uso geral

Leia mais

Bases de Dados. Álgebra Relacional II Junções, agregações, vistas. P. Serendero,

Bases de Dados. Álgebra Relacional II Junções, agregações, vistas. P. Serendero, Bases de Dados Álgebra Relacional II Junções, agregações, vistas P. Serendero, 2011-13 1 JUNÇÕES OU JOINS em SQL - R S A condição do JOIN é especificada na claúsula ON ou USING,, ou implicitamente

Leia mais

DCC011 Introdução a Banco de Dados. Construindo o Esquema. 1. Propriedades de Modelos ER. Construindo Esquema Conceitual

DCC011 Introdução a Banco de Dados. Construindo o Esquema. 1. Propriedades de Modelos ER. Construindo Esquema Conceitual DCC011 Introdução a Banco de Dados Projeto de Bancos de Dados Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br Construindo o Esquema Conceitual

Leia mais

Exercício Aula Passada. SQL Linguagem de Manipulação de Dados. Exercício Aula Passada. Exercício Aula Passada. Exercício Aula Passada

Exercício Aula Passada. SQL Linguagem de Manipulação de Dados. Exercício Aula Passada. Exercício Aula Passada. Exercício Aula Passada Ciência da Computação GBC043 Sistemas de Banco de Dados SQL Linguagem de Manipulação de Dados Profa. Maria Camila Nardini Barioni camila.barioni@ufu.br Bloco B - sala 1B137 1 semestre de 2018 2 Escreva

Leia mais

INF01145 Fundamentos de Banco de Dados Plano de ensino

INF01145 Fundamentos de Banco de Dados Plano de ensino INF01145 Fundamentos de Banco de Dados Plano de ensino Carlos A. Heuser Cirano Iochpe 2009/2 1 Identificação Nome do departamento: Informática Aplicada Nome da atividade de ensino: INF01145 - Fundamentos

Leia mais

Banco de Dados II. Aula Prof. Diemesleno Souza Carvalho

Banco de Dados II. Aula Prof. Diemesleno Souza Carvalho Banco de Dados II Aula 02.4 Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br Subconsultas Subconsultas Contextualizando... De forma geral, grande parte das consultas

Leia mais

SQL. Introdução. Por que SQL? Setenças Select-From-Where

SQL. Introdução. Por que SQL? Setenças Select-From-Where Introdução SQL Bancos de Dados I Altigran Soares da Silva IComp/UFAM 2013/02 Adaptado do Material do Professor Jeffrey Ullman Originalmente proposta para o System R desenvolvido nos laboratórios da IBM

Leia mais

Modelo Entidade Relacionamento

Modelo Entidade Relacionamento Programa DCC011 Introdução a Banco de Dados Modelo Entidade Relacionamento Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br Introdução Conceitos

Leia mais

Modelo de Dados Relacional

Modelo de Dados Relacional Modelo de Dados Relacional Sumário Conceitos Básicos Domínios, atributos, tuplas e relações Características das relações Notação Restrições de Integridade Domínio, chave, integridade entidade e integridade

Leia mais

!" # Modelos de dados. 1ª geração. 2ª geração. 3ª geração. Modelo Hierárquico Modelo Rede. Modelo Relacional

! # Modelos de dados. 1ª geração. 2ª geração. 3ª geração. Modelo Hierárquico Modelo Rede. Modelo Relacional Nuno Melo e Castro !" # Modelos de dados 1ª geração Modelo Hierárquico Modelo Rede 2ª geração Modelo Relacional 3ª geração Extensões ao modelo relacional Modelo lógico-dedutivo Modelo orientado a objectos

Leia mais

Bases de Dados. Parte IV: Álgebra e Cálculo Relacional

Bases de Dados. Parte IV: Álgebra e Cálculo Relacional Bases de Dados Parte IV Álgebra e Cálculo Relacional 1 Álgebra Relacional Conjunto básico de operações que nos permitem manipular relações no modelo relacional. As operações da álgebra relacional produzem

Leia mais

Álgebra Relacional. Conjunto de operações que usa uma ou duas relações como entrada e gera uma relação de saída. Operações básicas:

Álgebra Relacional. Conjunto de operações que usa uma ou duas relações como entrada e gera uma relação de saída. Operações básicas: Álgebra Relacional Conjunto de operações que usa uma ou duas relações como entrada e gera uma relação de saída operação (REL 1 ) REL 2 operação (REL 1,REL 2 ) REL 3 Operações básicas: seleção projeção

Leia mais

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos Conceitos Básicos Introdução Tópicos Especiais Modelagem de Dados Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Mestrado Profissional

Leia mais

Banco de dados. Aula 19 Algebra Relacional Continuação. 1 Wedson Quintanilha da Silva -

Banco de dados. Aula 19 Algebra Relacional Continuação. 1 Wedson Quintanilha da Silva - Banco de dados Aula 19 Algebra Relacional Continuação 1 Operadores da Algebra Relacional Operadores originários da teoria de conjuntos: União (union) : Intersecção (intersect): Diferença (minus): - Operadores

Leia mais

Álgebra Relacional. Índice. Sistemas de Bases de Dados. Orlando Belo

Álgebra Relacional. Índice. Sistemas de Bases de Dados. Orlando Belo Sistemas de Bases de Dados Edição 2004 Álgebra Relacional Orlando Belo Departamento de Informática Escola de Engenharia Universidade do Minho Índice Introdução A Álgebra Relacional Operadores da Álgebra

Leia mais

Modelo Relacional. Modelo Relacional. Modelo Relacional. Banco de Dados. Modelo Relacional. Modelo Relacional. Fernando Fonseca Ana Carolina

Modelo Relacional. Modelo Relacional. Modelo Relacional. Banco de Dados. Modelo Relacional. Modelo Relacional. Fernando Fonseca Ana Carolina Banco de Dados Definido por E F Codd em 1970, teve sua grande aceitação comercial a partir de meados da década de 1980 Razões da grande aceitação Simplicidade dos conceitos básicos Poder dos operadores

Leia mais

Prova de Fundamentos de Bancos de Dados 1 a Prova

Prova de Fundamentos de Bancos de Dados 1 a Prova Prova de Fundamentos de Bancos de Dados 1 a Prova Prof. Carlos A. Heuser Setembro de 2005 1. A SBC deseja manter uma base de dados com artigos publicados pelos pesquisadores brasileiros. Para cada pesquisador,

Leia mais

Sistemas de Informação e Bases de Dados 2012/2013. Modelo Relacional. Alberto Sardinha 2012 IST

Sistemas de Informação e Bases de Dados 2012/2013. Modelo Relacional. Alberto Sardinha 2012 IST Sistemas de Informação e Bases de Dados 2012/2013 Modelo Relacional Alberto Sardinha Bibliografia Raghu Ramakrishnan, Database Management Systems, Cap. 3 1 Sumário Modelo Relacional Conversão Modelo EA

Leia mais

INE 5423 Banco de Dados I

INE 5423 Banco de Dados I UFSC-CTC-INE Curso de Ciencias da Computação INE 5423 Banco de Dados I 2010/2 http://www.inf.ufsc.br/~ronaldo/ine5423 Programa da Disciplina Objetivo Conteúdo Avaliação Bibliografia Cronograma (Previsto)

Leia mais

Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas

Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas Processamento e Otimização de Consultas Banco de Dados Motivação Consulta pode ter sua resposta computada por uma variedade de métodos (geralmente) Usuário (programador) sugere uma estratégia para achar

Leia mais

Bases de Dados BDDAD. Linguagem SQL. Comando SELECT Divisão Algébrica. Nelson Freire (ISEP LEI-BDDAD 2015/16) 1/9

Bases de Dados BDDAD. Linguagem SQL. Comando SELECT Divisão Algébrica. Nelson Freire (ISEP LEI-BDDAD 2015/16) 1/9 BDDAD Bases de Dados Linguagem SQL Comando SELECT Nelson Freire (ISEP LEI-BDDAD 2015/16) 1/9 Operador Sumário Introdução Expressão Equivalente em SQL Soluções Tradução Directa de Expressão Algébrica Quantificação

Leia mais