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

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

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

Transcrição

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

2 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 Subtração Produto Cartesiano Exercício

3 Banco de Dados I ÁLGEBRA RELACIONAL

4 Álgebra Relacional O modelo relacional possui duas linguagens formais Álgebra Relacional Cálculo Relacional Discrimina o conjunto básico de operações para o modelo relacional Operações em álgebra relacional produzem novas relações Essas relações podem ser manipuladas utilizando operações da mesma álgebra

5 Importância da Álgebra Relacional 1) Provê um fundamento formal para operações do modelo relacional 2) É usada como uma base para implementar e otimizar consultas em SGBDRs

6 Cálculo Relacional O modelo relacional possui duas linguagens formais Álgebra Relacional Cálculo Relacional Provê uma notação declarativa de nível superior para especificação de consultas relacionais Explicita o que é recuperado ao invés de como é recuperado É uma linguagem declarativa É considerada uma linguagem formal não procedural

7 Operações da Álgebra Relacional Dois grupos Operações da teoria de conjuntos Cada relação é como um conjunto de tuplas UNIÃO INTERSEÇÃO DIFERENÇA DE CONJUNTP PRODUTO CARTESIANO Operações específicas de BDRs SELEÇÃO PROJEÇÃO JUNÇÃO e outras Operações UNÁRIAS e OPERAÇÕES BINÁRIAS

8 Operações Unárias Seleção (Select) e Projeção (Project) Seleção É usada para selecionar um subconjunto de tuplas de uma relação que satisfaça uma condição de seleção É vista como uma operação que divide uma relação em duas relações 1) Relação que satisfaz a condição 2) Relação que não satisfaz a condição Particionamento horizontal

9 Banco de Dados I OPERAÇÃO DE SELEÇÃO

10 Operação de SELEÇÃO Exemplo: selecionar tuplas de EMPREGADO cujo departamento é 4 ou aquelas cujo salário é superior a R$ ,00. EMPREGADO PNOME UNOME CPF SEXO SALÁRIO (R$) CPF_GERENTE DNO João Silva 1 M , Maria Souza 2 F , José Ribeiro 3 M , Manoel Cabral 4 M , Joana Alvares 5 F , Julia Assunção 6 F , Tiago Medeiros 7 M , Pedro Falcão 8 M ,00 null 1

11 Operação de SELEÇÃO Exemplo: selecionar tuplas de EMPREGADO cujo departamento é 4 ou aquelas cujo salário é superior a R$ ,00. EMPREGADO PNOME UNOME CPF SEXO SALÁRIO (R$) CPF_GERENTE DNO João Silva 1 M , Maria Souza 2 F , José Ribeiro 3 M , Manoel Cabral 4 M , Joana Alvares 5 F , Julia Assunção 6 F , Tiago Medeiros 7 M , Pedro Falcão 8 M ,00 null 1

12 Operação de SELEÇÃO Exemplo: selecionar tuplas de EMPREGADO cujo departamento é 4 ou aquelas cujo salário é superior a R$ ,00. EMPREGADO PNOME UNOME CPF SEXO SALÁRIO (R$) CPF_GERENTE DNO João Silva 1 M , Maria Souza 2 F , José Ribeiro 3 M , Manoel Cabral 4 M , Joana Alvares 5 F , Julia Assunção 6 F , Tiago Medeiros 7 M , Pedro Falcão 8 M ,00 NULL 1

13 Operação de SELEÇÃO Exemplo: selecionar tuplas de EMPREGADO cujo departamento é 4 ou aquelas cujo salário é superior a R$ ,00. EMPREGADO PNOME UNOME CPF SEXO SALÁRIO (R$) CPF_GERENTE DNO João Silva 1 M , Maria Souza 2 F , José Ribeiro 3 M , Manoel Cabral 4 M , Joana Alvares 5 F , Julia Assunção 6 F , Tiago Medeiros 7 M , Pedro Falcão 8 M ,00 NULL 1

14 Operação de SELEÇÃO Exemplo: selecionar tuplas de EMPREGADO cujo departamento é 4 ou aquelas cujo salário é superior a R$ ,00. EMPREGADO PNOME UNOME CPF SEXO SALÁRIO (R$) CPF_GERENTE DNO João Silva 1 M , Maria Souza 2 F , José Ribeiro 3 M , Manoel Cabral 4 M , Joana Alvares 5 F , Julia Assunção 6 F , Tiago Medeiros 7 M , Pedro Falcão 8 M ,00 NULL 1

15 Operação de SELEÇÃO Símbolo para SELEÇÃO σ (sigma) Operação indicada por σ <condição de seleção> (R) O resultado da SELEÇÃO produz uma relação com os mesmos atributos de R Expressão booleana Expressão da Álgebra Relacional O resultado é uma relação σ DNO=4 (EMPREGADO) σ SALARIO>30000 (EMPREGADO)

16 Operação de SELEÇÃO EMPREGADO cujo departamento é 4 ou aquelas cujo salário é superior a R$ ,00. σ DNO=4 (EMPREGADO) σ SALARIO>30000 (EMPREGADO) EMPREGADO PNOME UNOME CPF SEXO SALÁRIO (R$) CPF_GERENTE DNO João Silva 1 M , Maria Souza 2 F , José Ribeiro 3 M , Manoel Cabral 4 M , Joana Alvares 5 F , Julia Assunção 6 F , Tiago Medeiros 7 M , Pedro Falcão 8 M ,00 NULL 1

17 Operação de SELEÇÃO Símbolo para SELEÇÃO σ (sigma) Operação indicada por σ <condição de seleção> (R) <CONDIÇÃO DE SELEÇÃO> é composta por um número de cláusulas nos seguintes formatos <nome atributo> <op. comparação> <constante> ou = < > <nome atributo> <op. comparação> < nome atributo >

18 Operação de SELEÇÃO Operação indicada por σ <condição de seleção> (R) Cada cláusula que compõe <condição de seleção> pode ser conectada pelos operadores booleanos AND, OR e NOT Exemplo: σ (DNO = 4 AND SALARIO > 25000) OR (DNO = 5 AND SALARIO > 30000) (EMPREGADO)

19 Operação de SELEÇÃO σ(dno = 4 AND SALARIO > 25000) OR (DNO = 5 AND SALARIO > 30000) (EMPREGADO) EMPREGADO PNOME UNOME CPF SEXO SALÁRIO (R$) CPF_GERENTE DNO João Silva 1 M , Maria Souza 2 F , José Ribeiro 3 M , Manoel Cabral 4 M , Joana Alvares 5 F , Julia Assunção 6 F , Tiago Medeiros 7 M , Pedro Falcão 8 M ,00 null 1

20 Operação de SELEÇÃO σ(dno = 4 AND SALARIO > 25000) OR (DNO = 5 AND SALARIO > 30000) (EMPREGADO) EMPREGADO PNOME UNOME CPF SEXO SALÁRIO (R$) CPF_GERENTE DNO João Silva 1 M , Maria Souza 2 F , José Ribeiro 3 M , Manoel Cabral 4 M , Joana Alvares 5 F , Julia Assunção 6 F , Tiago Medeiros 7 M , Pedro Falcão 8 M ,00 null 1

21 Operação de SELEÇÃO σ(dno = 4 AND SALARIO > 25000) OR (DNO = 5 AND SALARIO > 30000) (EMPREGADO) EMPREGADO PNOME UNOME CPF SEXO SALÁRIO (R$) CPF_GERENTE DNO Maria Souza 2 F , Manoel Cabral 4 M , Joana Alvares 5 F ,00 2 5

22 Operação de SELEÇÃO O operador de seleção é unário Envolve apenas uma relação Operação de seleção é aplicada para cada tupla individualmente O grau da relação resultante de uma seleção é igual ao grau de R passado como parâmetro Número de atributos

23 Operação de SELEÇÃO Número de tuplas da relação resultante é sempre menor ou igualao número de tuplas de R σ c (R) R, qualquer que seja a condição C Operação de seleção é comutativa σ<cond1>(σ<cond2>(r)) = σ<cond2>(σ<cond1>(r)) σ(dno = 4 AND SALARIO > 25000) (σ(dno = 5 AND SALARIO > 30000)) Uma propagação de operações de conjunção pode ser combinada por uma condição conjuntiva (AND) σ(dno = 4 AND SALARIO > 25000) AND (DNO = 5 AND SALARIO > 30000)

24 Banco de Dados I OPERAÇÃO DE PROJEÇÃO

25 Operação de PROJEÇÃO Seleção e Projeção são operações unárias Seleção seleciona algumas linhas de uma tabela passada como parâmetro PROJEÇÃO seleciona colunas da tabela e descarta outras Seleção: particionamento horizontal de uma relação em duas relações Projeção: particionamento vertical de uma relação em duas relações

26 Operação de PROJEÇÃO Listar primeiro nome e salário de cada EMPREGADO Símbolo: PI Lista de atributos de EMPREGADO PNOME UNOME CPF SEXO SALÁRIO (R$) CPF_GERENTE DNO João Silva 1 M , Maria Souza 2 F , José Ribeiro 3 M , Manoel Cabral 4 M , Joana Alvares 5 F , Julia Assunção 6 F , Tiago Medeiros 7 M , Pedro Falcão 8 M ,00 null 1 π PNOME, SALARIO (EMPREGADO)

27 Operação de PROJEÇÃO Listar primeiro nome e salário de cada EMPREGADO Símbolo: PI Lista de atributos de EMPREGADO π PNOME, SALARIO (EMPREGADO) O resultado é uma nova relação

28 Operação de PROJEÇÃO Listar primeiro nome e salário de cada EMPREGADO Símbolo: PI Lista de atributos de EMPREGADO PNOME UNOME CPF SEXO SALÁRIO (R$) CPF_GERENTE DNO João Silva 1 M , Maria Souza 2 F , José Ribeiro 3 M , Manoel Cabral 4 M , Joana Alvares 5 F , Julia Assunção 6 F , Tiago Medeiros 7 M , Pedro Falcão 8 M ,00 null 1 π PNOME, SALARIO (EMPREGADO)

29 Operação de PROJEÇÃO Listar primeiro nome e salário de cada EMPREGADO Símbolo: PI Lista de atributos de EMPREGADO π PNOME, SALARIO (EMPREGADO) PNOME SALÁRIO (R$) João ,00 Maria ,00 José ,00 Manoel ,00 Joana ,00 Julia ,00 Tiago ,00 Pedro ,00

30 Operação de PROJEÇÃO π <lista de atributos> (R) Atributos em <lista de atributos> são projetados na mesma ordem O grau da operação é igual ao número de atributos presentes em <lista de atributos>

31 Operação de PROJEÇÃO Exemplo: π <SEXO, SALÁRIO> (EMPREGADO) PNOME UNOME CPF SEXO SALÁRIO (R$) CPF_GERENTE DNO João Silva 1 M , Maria Souza 2 F , José Ribeiro 3 M , Manoel Cabral 4 M , Joana Alvares 5 F , Julia Assunção 6 F , Tiago Medeiros 7 M , Pedro Falcão 8 M ,00 null 1

32 Operação de PROJEÇÃO Exemplo: π <SEXO, SALÁRIO> (EMPREGADO) SEXO SALÁRIO (R$) M ,00 F ,00 M ,00 M ,00 F ,00 F ,00 M ,00 M ,00 Essa relação possui algum problema?

33 Operação de PROJEÇÃO Exemplo: π <SEXO, SALÁRIO> (EMPREGADO) SEXO SALÁRIO (R$) M ,00 F ,00 M ,00 M ,00 F ,00 F ,00 M ,00 M ,00 Restrição do modelo relacional: uma relação não pode possuir tuplas iguais!

34 Operação de PROJEÇÃO Exemplo: π <SEXO, SALÁRIO> (EMPREGADO) SEXO SALÁRIO (R$) M ,00 F ,00 M ,00 M ,00 F ,00 F ,00 M ,00 M ,00 SEXO SALÁRIO (R$) M ,00 F ,00 M ,00 M ,00 F ,00 F ,00 M ,00 Grau da operação 2 Número de tuplas Menor ou igual a R Restrição do modelo relacional: uma relação não pode possuir tuplas iguais!

35 Exercício (1) π <lista de atributos> (R) Se em <lista de atributos> for escolhida uma superchave, o resultado de π terá quantas tuplas?

36 Operações seqüenciadas Operações de SELEÇÃO e PROJEÇÃO podem ser seqüenciadas πpnome, SALÁRIO (σdno=5 (EMPREGADO)) Qual a relação resultante da expressão acima?

37 Operações seqüenciadas πpnome, SALÁRIO (σdno=5 (EMPREGADO)) PNOME UNOME CPF SEXO SALÁRIO (R$) CPF_GERENTE DNO João Silva 1 M , Maria Souza 2 F , José Ribeiro 3 M , Manoel Cabral 4 M , Joana Alvares 5 F , Julia Assunção 6 F , Tiago Medeiros 7 M , Pedro Falcão 8 M ,00 null 1

38 Operações seqüenciadas πpnome, SALÁRIO (σdno=5 (EMPREGADO)) PNOME UNOME CPF SEXO SALÁRIO (R$) CPF_GERENTE DNO João Silva 1 M , Maria Souza 2 F , José Ribeiro 3 M , Manoel Cabral 4 M , Joana Alvares 5 F , Julia Assunção 6 F , Tiago Medeiros 7 M , Pedro Falcão 8 M ,00 null 1

39 Operações seqüenciadas πpnome, SALÁRIO (σdno=5 (EMPREGADO)) PNOME UNOME CPF SEXO SALÁRIO (R$) CPF_GERENTE DNO João Silva 1 M , Maria Souza 2 F , José Ribeiro 3 M , Manoel Cabral 4 M , Joana Alvares 5 F , Julia Assunção 6 F , Tiago Medeiros 7 M , Pedro Falcão 8 M ,00 null 1

40 Operações seqüenciadas πpnome, SALÁRIO (σdno=5 (EMPREGADO)) PNOME UNOME CPF SEXO SALÁRIO (R$) CPF_GERENTE DNO João Silva 1 M , Maria Souza 2 F , José Ribeiro 3 M , Manoel Cabral 4 M , Joana Alvares 5 F , Julia Assunção 6 F , Tiago Medeiros 7 M , Pedro Falcão 8 M ,00 null 1

41 Operações seqüenciadas πpnome, SALÁRIO (σdno=5 (EMPREGADO)) PNOME SALÁRIO (R$) João ,00 Maria ,00 Joana ,00 Julia ,00

42 Operação REBATIZAR Rename A relação resultante recebe um nome intermediário πpnome, SALÁRIO (σdno=5 (EMPREGADO)) DEP5_EMPS σdno=5 (EMPREGADO) RESULTADO πpnome, SALÁRIO (DEP5_EMPS) Uma expressão pode ser simplificada utilizando RENAME

43 Operação REBATIZAR Atributos também podem ser renomeados TEMP σdno=5 (EMPREGADO) R(PRIMEIRO_NOME, SALÁRIO) πpnome, SALÁRIO (TEMP) Se nenhum RENAME for aplicado, o nome dos atributos serão os mesmos da relação original

44 Banco de Dados I OPERAÇÕES A PARTIR DA TEORIA DOS CONJUNTOS

45 Operações a partir da teoria dos conjuntos Operação de UNIÃO Recupera todas as tuplas das relações envolvidas Elimina tuplas repetidas Exemplo: Recupere todos os CPFs dos empregados do departamento 5 ou daqueles que gerenciam diretamente um empregado do departamento 5 DEP5_EMP σdno=5 (EMPREGADO) RESULTADO1 πcpf(dep5_emp) RESULTADO2(CPF) πcpf_gerente(dep5_emp) RESULTADO RESULTADO1 U RESULTADO2

46 Operações a partir da teoria dos conjuntos Operação de UNIÃO Operação de UNIÃO só pode ser realizada entre duas relações com mesmo grau e se o domínio de cada atributo for igual As duas relações possuem o mesmo número de atributos e cada par correspondente possui o mesmo domínio

47 Operações a partir da teoria dos conjuntos Operação de INTERSEÇÃO Indicado por R S e resulta todas tuplas que estão em ambas relações, R e S Diferença de conjunto (SUBTRAÇÃO) Indicado por R S Inclui todas as tuplas que estão em R mas não estão em S

48 Operações a partir da teoria dos conjuntos Operação PRODUTO CARTESIANO Conhecida como CROSS PRODUCT (produto cruzado) ou CROSS JOIN (junção cruzada) Indicado por X As relações envolvidas não precisam ser compatíveis O resultado de R(A 1, A 2,..., A n ) X S(B 1, B 2,..., B m ) é uma relação Q de grau n + m: Q(A 1, A 2,..., A n, B 1, B 2,..., B m ), nessa ordem

49 Operações a partir da teoria dos conjuntos Operação PRODUTO CARTESIANO Exemplo: recupere uma lista com nomes de dependentes de cada empregada Esquemas EMPREGADO(Pnome, Unome, CPF, Sexo, Salário, Gerente_SSN, DNO) DEPENDENTE(ECPF, Nome_dependente, Sexo)

50 Operações a partir da teoria dos conjuntos Operação PRODUTO CARTESIANO Exemplo: recupere uma lista com nomes de dependentes de cada empregada EMPS_FEM σ SEXO = F (EMPREGADO) NOMESEMP π PNOME, UNOME, CPF (EMPS_FEM) DEPENDENTES_EMP NOMESEMP X DEPENDENTE DEPENDENTES_REAIS σ CPF = ECPF (DEPENDENTES_EMP) RESULTADO π PNOME, UNOME, NOME_DEPENDENTE (DEPENDENTES_REAIS)

51 Exercício (2) Dado os esquemas DISCIPLINA(Cod, Sala, Cod_Prof, Nível) PROFESSOR(Código, Nome, Idade) Estado do BD DISCIPLINA CÓDIGO SALA COD_PROF NÍVEL INF GR INF GR INF GR INF PG PROFESSOR CÓDIGO NOME IDADE Pedro Manu el José 66

52 Exercício (2) DISCIPLINA(Cod, Sala, Cod_Prof, Nível) PROFESSOR(Código, Nome, Idade) Qual o código dos professores que lecionam disciplinas na Sala 3? Selecione as disciplinas que ocorrem na sala 3 DISC_3 σ SALA = 3 (DISCIPLINA) DISCIPLINA CÓDIGO SALA COD_PROF NÍVEL INF GR INF GR INF GR INF PG

53 Exercício (2) DISCIPLINA(Cod, Sala, Cod_Prof, Nível) PROFESSOR(Código, Nome, Idade) Qual o código dos professores que lecionam disciplinas na Sala 3? Selecione as disciplinas que ocorrem na sala 3 DISC_3 σ SALA = 3 (DISCIPLINA) DISCIPLINA CÓDIGO SALA COD_PROF NÍVEL INF GR INF GR INF GR INF PG

54 Exercício (2) DISCIPLINA(Cod, Sala, Cod_Prof, Nível) PROFESSOR(Código, Nome, Idade) Qual o código dos professores que lecionam disciplinas na Sala 3? Selecione as disciplinas que ocorrem na sala 3 DISC_3 σ SALA = 3 (DISCIPLINA) DISC_3 CÓDIGO SALA COD_PROF NÍVEL INF GR INF PG

55 Exercício (2) DISCIPLINA(Cod, Sala, Cod_Prof, Nível) PROFESSOR(Código, Nome, Idade) Qual o código dos professores que lecionam disciplinas na Sala 3? Projete DISC_3 em COD_PROF PROFS_SALA_3 π COD_PROF (DISC_3) DISC_3 CÓDIGO SALA COD_PROF NÍVEL INF GR INF PG

56 Exercício (2) DISCIPLINA(Cod, Sala, Cod_Prof, Nível) PROFESSOR(Código, Nome, Idade) Qual o código dos professores que lecionam disciplinas na Sala 3? Projete DISC_3 em COD_PROF PROFS_SALA_3 π COD_PROF (DISC_3) DISC_3 CÓDIGO SALA COD_PROF NÍVEL INF GR INF PG

57 Exercício (2) DISCIPLINA(Cod, Sala, Cod_Prof, Nível) PROFESSOR(Código, Nome, Idade) Qual o código dos professores que lecionam disciplinas na Sala 3? Projete DISC_3 em COD_PROF PROFS_SALA_3 π COD_PROF (DISC_3) DISC_3 COD_PROF

58 Exercício (2) DISCIPLINA(Cod, Sala, Cod_Prof, Nível) PROFESSOR(Código, Nome, Idade) Resolvendo de outra forma... Projete DISCIPLINA em SALA e COD_PROF SALA_E_COD_PROF π SALA, COD_PROF (DISCIPLINA) DISCIPLINA CÓDIGO SALA COD_PROF NÍVEL INF GR INF GR INF GR INF PG

59 Exercício (2) DISCIPLINA(Cod, Sala, Cod_Prof, Nível) PROFESSOR(Código, Nome, Idade) Resolvendo de outra forma... Projete DISCIPLINA em SALA e COD_PROF SALA_E_COD_PROF π SALA, COD_PROF (DISCIPLINA) DISCIPLINA CÓDIGO SALA COD_PROF NÍVEL INF GR INF GR INF GR INF PG

60 Exercício (2) DISCIPLINA(Cod, Sala, Cod_Prof, Nível) PROFESSOR(Código, Nome, Idade) Resolvendo de outra forma... Projete DISCIPLINA em SALA e COD_PROF SALA_E_COD_PROF π SALA, COD_PROF (DISCIPLINA) SALA_E_COD_PROF SALA COD_PROF

61 Exercício (2) DISCIPLINA(Cod, Sala, Cod_Prof, Nível) PROFESSOR(Código, Nome, Idade) Resolvendo de outra forma... Selecione SALA_E_COD_PROF onde Sala = 3 PROFS_SALA_3 σ SALA = 3 (SALA_E_COD_PROF ) SALA_E_COD_PROF SALA COD_PROF

62 Exercício (2) DISCIPLINA(Cod, Sala, Cod_Prof, Nível) PROFESSOR(Código, Nome, Idade) Resolvendo de outra forma... Selecione SALA_E_COD_PROF onde Sala = 3 SALA_3_E_PROFS σ SALA = 3 (SALA_E_COD_PROF ) SALA_E_COD_PROF SALA COD_PROF

63 Exercício (2) DISCIPLINA(Cod, Sala, Cod_Prof, Nível) PROFESSOR(Código, Nome, Idade) Resolvendo de outra forma... Selecione SALA_E_COD_PROF onde Sala = 3 SALA_3_E_PROFS σ SALA = 3 (SALA_E_COD_PROF ) SALA_3_E_PROFS SALA COD_PROF

64 Exercício (2) DISCIPLINA(Cod, Sala, Cod_Prof, Nível) PROFESSOR(Código, Nome, Idade) Resolvendo de outra forma... Projete SALA_3_E_PROFS em COD_PROF PROFS_3 π COD_PROF (SALA_3_E_PROFS) SALA_3_E_PROFS SALA COD_PROF

65 Exercício (2) DISCIPLINA(Cod, Sala, Cod_Prof, Nível) PROFESSOR(Código, Nome, Idade) Resolvendo de outra forma... Projete SALA_3_E_PROFS em COD_PROF PROFS_3 π COD_PROF (SALA_3_E_PROFS) SALA_3_E_PROFS COD_PROF

66 Prova: 27/09 Aula 8 - Prof. Bruno Moreno 16/09/2011

67 Freqüência! Aula 8 - Prof. Bruno Moreno 16/09/2011

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

Á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

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

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

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

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

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

Á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

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

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

Banco de Dados I. Aula 16 - Prof. Bruno Moreno 04/11/2011

Banco de Dados I. Aula 16 - Prof. Bruno Moreno 04/11/2011 Banco de Dados I Aula 16 - Prof. Bruno Moreno 04/11/2011 Plano de Aula O comando DELETE Cláusula CHECK Comparações utilizando NULL Funções agregadas Junções de tabelas em SQL Visões Comando DELETE DELETE

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

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

Á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

Á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

Um modelo de dados, além de definir estruturas e restrições, deve definir um conjunto de operações para manipular os dados.

Um modelo de dados, além de definir estruturas e restrições, deve definir um conjunto de operações para manipular os dados. Álgebra Relacional Um modelo de dados, além de definir estruturas e restrições, deve definir um conjunto de operações para manipular os dados. A álgebra relacional constitui o conjunto básico de operações

Leia mais

Principais Conceitos. Modelo Relacional representa o banco de dados como uma coleção de relações Tupla Atributos Relação Domínio

Principais Conceitos. Modelo Relacional representa o banco de dados como uma coleção de relações Tupla Atributos Relação Domínio MODELO RELACIONAL Principais Conceitos Modelo Relacional representa o banco de dados como uma coleção de relações Tupla Atributos Relação Domínio Conceitos Básicos - Relações A Álgebra Relacional fundamenta-se

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 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

Banco de Dados I. Aula 14 - Prof. Bruno Moreno 11/10/2011

Banco de Dados I. Aula 14 - Prof. Bruno Moreno 11/10/2011 Banco de Dados I Aula 14 - Prof. Bruno Moreno 11/10/2011 Plano de Aula INSERT UPDATE SELECT-FROM-WHERE Uso de ALIASES SELECT com * DISTINCT Operações de Conjuntos Comparação entre substrings Operadores

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

Á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

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

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

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

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

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

Consultas SQL. Andre Noel

Consultas SQL. Andre Noel Consultas SQL Andre Noel Introdução Introdução Uma distinção entre SQL e o modelo relacional: SQL permite que uma tabela tenha duas ou mais tuplas iguais Introdução Uma distinção entre SQL e o modelo relacional:

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

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

- 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

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

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

Banco de Dados Capítulo 2: Modelo Relacional. Bach. em Ciência da Computação UFPB/CCT Cláudio Baptista, PhD baptista@dsc.ufpb.br

Banco de Dados Capítulo 2: Modelo Relacional. Bach. em Ciência da Computação UFPB/CCT Cláudio Baptista, PhD baptista@dsc.ufpb.br Banco de Dados Capítulo 2: Modelo Relacional Bach. em Ciência da Computação UFPB/CCT Cláudio Baptista, PhD baptista@dsc.ufpb.br 2.1 Histórico Modelo Relacional Foi introduzido por Codd (1970) Tornou-se

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

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

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

GBC043 Sistemas de Banco de Dados Álgebra e Cálculo Relacional. Ilmério Reis da Silva UFU/FACOM

GBC043 Sistemas de Banco de Dados Álgebra e Cálculo Relacional. Ilmério Reis da Silva  UFU/FACOM GBC043 Sistemas de Banco de Dados Álgebra e Cálculo Relacional Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM Álgebra e Cálculo Relacional e o Modelo R São as linguagens

Leia mais

Álgebra Relacional. OBS: as operações Seleção e Projeção são operações unárias porque atuam em relações únicas.

Álgebra Relacional. OBS: as operações Seleção e Projeção são operações unárias porque atuam em relações únicas. Álgebra Relacional Álgebra Relacional é o conjunto básico de operações para o Modelo Relacional. Essas operações permitem a um usuário especificar as solicitações básicas de recuperação. O resultado de

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

Á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

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

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

23/05/12. Agenda. Introdução. Introdução. Introdução. Álgebra. Relacional. Cálculo. Relacional

23/05/12. Agenda. Introdução. Introdução. Introdução. Álgebra. Relacional. Cálculo. Relacional Processamento de Consultas em BD Distribuídos Decomposição de consultas e Localização de dados IN1128/IF694 Bancos de Dados Distribuídos e Móveis Ana Carolina Salgado acs@cin.ufpe.br Bernadette Farias

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

Modelo de Dados Relacional

Modelo de Dados Relacional Modelo de Dados Relacional Introdução O modelo relacional representa um banco de dados como um conjunto de relações Informalmente, uma relação é uma tabela de valores, onde cada linha representa uma coleção

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 SQL Structured Query Language SQL Desenvolvida pela IBM Structured English Query Language Sequel Linguagem de consulta para o sistema R Primeiro

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

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. Aula 17 - Prof. Bruno Moreno 08/11/2011

Banco de Dados I. Aula 17 - Prof. Bruno Moreno 08/11/2011 Banco de Dados I Aula 17 - Prof. Bruno Moreno 08/11/2011 Plano de Aula Visões em SQL Normalização Motivação Definição Formas Normais Banco de Dados I VISÕES Visões É uma tabela única derivada de outra(s)

Leia mais

Á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

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

Laboratóriode Bases de Dados Aula12. ÁlgebraRelacional-Revisão. Professora: Fátima L. S. Nunes

Laboratóriode Bases de Dados Aula12. ÁlgebraRelacional-Revisão. Professora: Fátima L. S. Nunes ACH2025 Laboratóriode Bases de Dados Aula12 ÁlgebraRelacional-Revisão Professora: Fátima L. S. Nunes Álgebra Relacional operações fundamentais: selecionar projetar renomear unárias produto cartesiano união

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

SQL-99: Esquema de BD EMPRESA

SQL-99: Esquema de BD EMPRESA SQL-99: Esquema de BD EMPRESA SQL-99: Instâncias do esquema EMPRESA 1 Consultas externa, aninhada e correlacionada para cada tupla da consulta externa, a consulta aninhada devolve o atributo solicitado

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

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

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

Á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 a Bancos de Dados

Introdução a Bancos de Dados Introdução a Bancos de Dados - Conceitos - Modelos lógicos e relacional - Álgebra relacional - SQL - Projeto Lógico INPE - Divisão de Processamento de Imagens INPE 1 Sistemas de Banco de Dados Definição:

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

Bancos de Dados. Linguagens F ormais de Cons ulta a Banco de Dados

Bancos de Dados. Linguagens F ormais de Cons ulta a Banco de Dados Linguagens F ormais de Cons ulta a Banco de Dados Tópicos Introdução: Linguagens de Consulta Um pequeno Banco de Dados para Controle de Estoque A Álgebra Relacional O Cálculo Relacional Exercícios Parte

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. Gerenciamento de Dados e Informação. Modelo Relacional Sejam os domínios D 1 (D- Pessoa) e D 2 (D- Endereço) Modelo Relacional

Modelo Relacional. Gerenciamento de Dados e Informação. Modelo Relacional Sejam os domínios D 1 (D- Pessoa) e D 2 (D- Endereço) Modelo Relacional Gerenciamento de Dados e Informação 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

Leia mais

Modelo Relacional. André Restivo. Faculdade de Engenharia da Universidade do Porto. February 24, 2012

Modelo Relacional. André Restivo. Faculdade de Engenharia da Universidade do Porto. February 24, 2012 Modelo Relacional André Restivo Faculdade de Engenharia da Universidade do Porto February 24, 2012 André Restivo (FEUP) Modelo Relacional February 24, 2012 1 / 19 Sumário 1 Modelo Relacional 2 Operações

Leia mais

Tecnologias de Bancos de Dados

Tecnologias de Bancos de Dados Tecnologias de Bancos de Dados Processamento e Otimização de consultas Professor: Tadeu dos Reis Faria Set/2008 Referências Bibliográficas NAVATHE, Shamkant B., ELSMARI, Ramez. Sistemas de Banco de Dados.

Leia mais

Faculdade Pitágoras 24/10/2011. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet

Faculdade Pitágoras 24/10/2011. 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.1 Álgebra Relacional -Conceitos - Seleção - Projeção

Leia mais

BDII SQL Junção Revisão 8

BDII SQL Junção Revisão 8 exatasfepi.com.br BDII SQL Junção Revisão 8 André Luís Duarte Leais são as feridas feitas pelo amigo, mas os beijos do inimigo são enganosos. Provérbios 27:6 SQL Introdução Produto cartesiano Nomes alternativos

Leia mais

Processamento e Otimização de Consultas. Msc. Simone Dominico Orientador: Dr. Eduardo Cunha de Almeida PPGINF - UFPR

Processamento e Otimização de Consultas. Msc. Simone Dominico Orientador: Dr. Eduardo Cunha de Almeida PPGINF - UFPR Processamento e Otimização de Consultas Msc. Simone Dominico Orientador: Dr. Eduardo Cunha de Almeida PPGINF - UFPR Conteúdo Processamento de consultas; Introdução Etapas no Processamento de Consultas

Leia mais

Banco de Dados Notas de Aula Consultas em SQL Prof. Dr. Daniel A. Furtado

Banco de Dados Notas de Aula Consultas em SQL Prof. Dr. Daniel A. Furtado Banco de Dados Notas de Aula Consultas em SQL Prof. Dr. Daniel A. Furtado Forma geral: SELECT FROM [WHERE ] [GROUP BY ]

Leia mais

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

Banco de Dados. Modelo de Dados Relacional. João Eduardo Ferreira Osvaldo Kotaro Takai Marcelo Finger Banco de Dados Modelo de Dados Relacional João Eduardo Ferreira Osvaldo Kotaro Takai Marcelo Finger Tópicos Introdução Notação Chaves Esquema Restrições de Integridade Introdução O Modelo Relacional (MR)

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

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

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

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

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

Banco de Dados. Cálculo Relacional de Tuplas. João Eduardo Ferreira Osvaldo Kotaro Takai

Banco de Dados. Cálculo Relacional de Tuplas. João Eduardo Ferreira Osvaldo Kotaro Takai Banco de Dados Cálculo Relacional de Tuplas João Eduardo Ferreira Osvaldo Kotaro Takai Introdução O Cálculo Relacional de Tuplas (CRT) é uma alternativa à Álgebra Relacional (AR). A AR é procedimental,

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

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

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

Banco de Dados. Aula 6 - Prof. Bruno Moreno 09/09/2011 Banco de Dados Aula 6 - Prof. Bruno Moreno 09/09/2011 Banco de Dados I MODELO RELACIONAL 16:52 Modelos anteriores Modelo hierárquico e em rede Propostos na década de 60 Implementados durante décadas de

Leia mais

Introdução ao Banco de Dados. Banco de Dados

Introdução ao Banco de Dados. Banco de Dados Introdução ao Banco de Dados Prof. Tiago Garcia de Senna Carneiro UFOP Prof. Técnicas de Programação II 2006 PARTE 1: Conceitos Básicos Banco de Dados SGDB: Sistema Gerenciador de Banco de Dados Definição:

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

SQL Consultas Básicas

SQL Consultas Básicas SQL Consultas Básicas Consulta a dados de uma tabela select lista_atributos from tabela [where condição] Mapeamento para a álgebra relacional select a 1,..., a n from t where c π a1,..., an (σ c (t)) Exemplos

Leia mais

Revisão de Bancos de Dados

Revisão de Bancos de Dados Revisão de Bancos de Dados Conceitos Básicos 1. Defina o que é um banco de dados e o que é um sistema gerenciador de bancos de dados (SGBD). 2. Defina as arquiteturas de software em duas camadas (cliente/servidor)

Leia mais

1ª Prova 23/10/17. Tópicos estudados (todos os assuntos até agora, 12 aulas):

1ª Prova 23/10/17. Tópicos estudados (todos os assuntos até agora, 12 aulas): 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 1ª Prova 23/10/17 Tópicos estudados (todos os

Leia mais

Aula 9 BD 1 SQL Parte 1. Profa. Elaine Faria UFU

Aula 9 BD 1 SQL Parte 1. Profa. Elaine Faria UFU Aula 9 BD 1 SQL Parte 1 Profa. Elaine Faria UFU - 2018 Visão Geral SQL DML (Data Manipulation Language) Formular consultas, inserir, excluir e modificar tuplas DDL (Data Definition Language) Criar, excluir

Leia mais

Processamento de Consultas. Processamento de Consultas. Processamento de Consultas Distribuídas. Otimização de Consultas

Processamento de Consultas. Processamento de Consultas. Processamento de Consultas Distribuídas. Otimização de Consultas Processamento de Processamento de Consultas Processamento de Consultas Passos na execução de consultas Consulta ao B.D. Análise e Tradução Expressão Algébrica Avaliação Plano de Execução Otimização Resultado

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

Introdução ao SQL. Aécio Costa

Introdução ao SQL. Aécio Costa Aécio Costa A linguagem SQL é um padrão de linguagem de consulta comercial e possui as seguintes partes: Linguagem de definição de dados (DDL) Linguagem interativa de manipulação de dados (DML) Definiçã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

MATA60 BANCO DE DADOS Aula: Otimização. Prof. Daniela Barreiro Claro

MATA60 BANCO DE DADOS Aula: Otimização. Prof. Daniela Barreiro Claro MATA60 BANCO DE DADOS Aula: Otimização Prof. Daniela Barreiro Claro Introdução a Otimização SQL, SQL3 e OQL são linguagens declarativas O SGBD deve processar e otimizar estas consultas antes delas serem

Leia mais

Modelo de dados relacional e as restrições de um BD relacional

Modelo de dados relacional e as restrições de um BD relacional Modelo de dados relacional e as restrições de um BD relacional O modelo relacional foi introduzido por Ted Codd, da IBM em 1970 atraiu a atenção em virtude de sua simplicidade e base matemática o modelo

Leia mais

Projeto de Bancos de Dados Distribuídos (Parte 01)

Projeto de Bancos de Dados Distribuídos (Parte 01) Projeto de Bancos de Dados Distribuídos (Parte 01) IF694 BD Distribuídos e Móveis Bernadette Farias Lóscio bfl@cin.ufpe.br Tipos de fragmentação n n Fragmentação vertical 1 Grau de fragmentação n É preciso

Leia mais

Exercícios. Aula 03 Banco de Dados. Capítulo 3 Modelo Relacional. Estrutura / Esquemas de banco de dados. Álgebra Relacional

Exercícios. Aula 03 Banco de Dados. Capítulo 3 Modelo Relacional. Estrutura / Esquemas de banco de dados. Álgebra Relacional Exercícios Aula 03 Banco de Dados Capítulo 3 Modelo Relacional Estrutura / Esquemas de banco de dados 01) Defina banco de dados relacional. 02) O que é relação e tupla. Cite três exemplos. 03) O que significa

Leia mais

UTFPR - Universidade Tecnológica Federal do Paraná. Processamento e otimização de consultas

UTFPR - Universidade Tecnológica Federal do Paraná. Processamento e otimização de consultas UTFPR - Universidade Tecnológica Federal do Paraná Processamento e otimização de consultas Leyza Baldo Dorini 04/Nov/2009 Programação da aula Introdução: processamento e otimização de consultas Etapas:

Leia mais