Bases de Dados. Álgebra Relacional. Selecção (σ) Seleccionar os registos que satisfazem uma condição exemplo: empréstimos da agência de Perryridge
|
|
- Luzia Belmonte Lencastre
- 7 Há anos
- Visualizações:
Transcrição
1 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
2 Outros exemplos de selecção Empréstimos superiores a 1200 operadores =,, <, >,, σ amount > 1200 (loan) Várias condições operadores and ( ), or( ), not ( ) σ branch_name = Perryridge Λ amount > 1200 (loan) 3 Projecção (Π) Listar apenas algumas colunas da relação os restantes ficam de fora os registos duplicados são eliminados exemplo: números e quantias dos empréstimos Π loan_number, amount (loan) 4 2
3 Composição de operações O resultado de uma operação é sempre uma relação resultado pode ser passado como argumento exemplo: nomes dos clientes que vivem na cidade de Harrison Π customer_name (σ customer_city = Harrison (customer)) As operações de álgebra relacional l podem ser combinadas para formar expressões 5 Composição de operações Π customer_name (σ customer_city = Harrison (customer)) σ Π 6 3
4 União (U) Juntar os registos de duas relações exemplo: nomes dos clientes que têm conta ou empréstimo (ou ambos) Π customer_name (depositor) U Π customer_name (borrower) porque é que só dá 10 linhas em vez de = 15? 7 Diferença ( ) Encontrar os registos que estão numa relação mas não na outra exemplo: nomes dos clientes com conta mas sem empréstimo Π customer_name (depositor) Π customer_name (borrower) 8 4
5 Aplicação da união e diferença As operações de união (r U s) e diferença (r s) só podem ser aplicadas se as relações r e s tiverem o mesmo número de colunas se o tipo de cada coluna for igual nas duas relações r e s podem ser relações ou resultados de expressões 9 Produto cartesiano (x) Combinar os dados de duas relações (r x s) exemplo: borrower x loan 10 5
6 Observações sobre o produto cartesiano O esquema do resultado é a concatenação dos esquemas para desambiguar colunas usa-se a relação original como prefixo (customer_name, borrower.loan_number, loan.loan_number, branch_name, amount) No resultado aparecem todos os pares possíveis se r tem n registos e s tem m então (s x r) tem n*m no exemplo anterior, pode acontecer borrower.loan_number loan.loan_number 11 Exemplos de produto cartesiano Nomes dos clientes com empréstimo na agência de Perryridge 12 6
7 Exemplos de produto cartesiano Nomes dos clientes com empréstimo na agência de Perryridge passo 1 σ branch_name = Perryridge (borrower x loan) 13 Exemplos de produto cartesiano Nomes dos clientes com empréstimo na agência de Perryridge passo 2 σ borrower.loan_number = loan.loan_number ( σ branch_name = Perryridge (borrower x loan) ) 14 7
8 Exemplos de produto cartesiano Nomes dos clientes com empréstimo na agência de Perryridge passo 3 Π customer_name ( σ borrower.loan_number = loan.loan_number ( σ branch_name = Perryridge (borrower x loan) ) ) 15 Renomeação (ρ) Renomear relações e resultados de expressões fórmula geral: ρ x(a1, A 2, A n )(E) exemplo: maior saldo em conta obter todos os saldos que não são o maior subtrair esses saldos ao conjunto de todos os saldos Esta estratégia para resolver consultas é muito importante em bases de dados 16 8
9 Renomeação (ρ) Maior saldo em conta 17 Exemplo de renomeação Maior saldo em conta passo 1 obter os saldos que não são os maiores Π account.balance ( σ account.balance < d.balance ( account x ρ d (account) ) ) 18 9
10 Exemplo de renomeação Maior saldo em conta passo 2 subtrair esses saldos ao conjunto de todos os saldos Π balance (account) Π account.balance ( σ account.balance < d.balance ( account x ρ d (account) )) ) 19 Outro exemplo de renomeação Encontrar o nome de todos os clientes que vivem na mesma rua e cidade que o cliente chamado Smith 20 10
11 Outro exemplo de renomeação Encontrar o nome de todos os clientes que vivem na mesma rua e cidade que o cliente chamado Smith passo 1 obter a rua e cidade do cliente Smith Π customer_street, customer_city ( σ customer_name = Smith (customer) ) 21 Outro exemplo de renomeação Encontrar o nome de todos os clientes que vivem na mesma rua e cidade que o cliente chamado Smith passo 2 renomear para usar em seguida ρ smith_addr(street,city) ( Π customer_street, customer_city ( σ customer_name = Smith (customer) )) ) 22 11
12 Outro exemplo de renomeação Encontrar o nome de todos os clientes que vivem na mesma rua e cidade que o cliente chamado Smith passo 3 combinar e seleccionar σ customer.customer_street = smith_addr.street Λ customer.customer_city = smith_addr.city ( customer x ρ smith_addr(street,city) ( Π customer_street, customer_city ( σ customer_name = Smith (customer) ) ) ) 23 Outro exemplo de renomeação Encontrar o nome de todos os clientes que vivem na mesma rua e cidade que o cliente chamado Smith passo 4 projectar para obter o resultado final Π customer.customer_name ( σ customer.customer_street = smith_addr.street Λ customer.customer_city = smith_addr.city ( customer x ρ smith_addr(street,city) ( Π customer_street, customer_city ( σ customer_name = Smith (customer) ) ) ) ) 24 12
13 Resumo Operações fundamentais da álgebra relacional σ p (E 1 1) ) em que p é a condição de selecção dos registos s (E 1 ) em que S é o conjunto de colunas pretendido E 1 U E 2 E 1 E 2 E 1 x E 2 ρ x (E 1 ) em que x é um sinónimo para a relação E 1 25 Bases de Dados Álgebra Relacional operações adicionais 13
14 Intersecção ( ) Encontrar os registos comuns a duas relações (r s) é uma operação equivalente a (r (r s)) sujeita aos mesmo requisitos que a diferença aridade compatibilidade exemplo: nomes dos clientes que têm conta e empréstimo Π customer_name (borrower) Π customer_name (depositor) 27 Junção Natural ( ) Simplificar expressões típicas de produto e selecção calcula o produto cartesiano de duas relações efectua selecção por igualdade de colunas comuns remove registos duplicados Fórmula geral r s = Π R U S (σ r.a1 = s.a 1 Λ r.a 2 = s.a 2 Λ (r x s) ) em que: R S = {A 1, A 2,, A n } 28 14
15 Relembrar Produto cartesiano (x) Produto combina os dados de duas relações (r x s) 29 Junção Natural ( ) Junção natural força igualdade de valores em colunas com o mesmo nome 30 15
16 Exemplo de junção natural Nomes dos clientes com empréstimo, número do respectivo empréstimo e quantia sem junção natural: Π customer_name, borrower.loan_number, amount ( σ borrower.loan_number = loan.loan_number ( borrower x loan) ) 31 Exemplo de junção natural Nomes dos clientes com empréstimo, número do respectivo empréstimo e quantia com junção natural: Π customer_name, loan_number, amount (borrower loan) 32 16
17 Outros exemplos de junção natural Nomes das agências com contas de clientes que vivem na cidade de Harrison Π branch_name ( σ customer_city = Harrison ( account depositor customer ) ) 33 Propriedades da junção natural A junção natural é associativa é indiferente fazer: (account depositor) customer account (depositor customer) 34 17
18 Outros exemplos de junção natural Nomes de todos os clientes com empréstimo e conta no banco Π customer_name (borrower depositor) O mesmo resultado pode ser obtido por expressões diferentes Π customer_name (borrower) Π customer_name (depositor) 35 Casos particulares de junção natural Se r(r) e s(s) são tais que R S = Ø então: r s = r x s Diferentes condições de selecção (junção-θ) r θ s = σ θ (r x s) exemplo: account account.balance < d.balance ρ d (account) σ account.balance < d.balance (account x ρ d (account)) 36 18
19 Divisão ( ) Encontrar registos que obedecem a uma dada relação questões do tipo: quem já leu todos os livros que eu já li? exemplo: nomes dos clientes com conta em todas as agências de Brooklyn identificar todas as agências de Brooklyn identificar todos os titulares e agências onde têm contas dividir estes titulares-agências pelas agências de Brooklyn 37 Exemplo de divisão Nomes dos clientes com conta em todas as agências de Brooklyn passo 1 identificar as agências de Brooklyn Π branch_name (σ branch_city = Brooklyn (branch) ) 38 19
20 Exemplo de divisão Nomes dos clientes com conta em todas as agências de Brooklyn passo 2 identificar todos os titulares e agências onde têm contas Π customer_name, branch_name (depositor account) 39 Exemplo de divisão Nomes dos clientes com conta em todas as agências de Brooklyn passo 3 divisão Π customer_name, branch_name (depositor account) Π branch_name (σ branch_city = Brooklyn (branch) ) = customer_name Johnson 40 20
21 Formalização da divisão (r s) é uma operação equivalente a r s = R-S (r ) R-S ( ( R-S (r) x s) R-S,S (r) ) r(r) = relação r com esquema R s(s) = relação s com esquema S = customer_name Johnson 41 Formalização da divisão (r s) é uma operação equivalente a r s = R-S (r ) R-S ( ( R-S (r) x s) R-S,S (r) ) calcula todas as combinações ordena as colunas de r subtrai para obter as combinações não pretendidas identifica registos não pretendidos subtrai aos existentes os registos não pretendidos 42 21
22 Resumo Operações adicionais de álgebra relacional E 1 E 2 E 1 E 2 E 1 θ E 2 E 1 E 2 43 Bases de Dados Álgebra Relacional extensões 22
23 Projecção Generalizada Permite utilizar funções aritméticas na projecção fórmula geral Π F1, F 2,, F n (E) E é uma expressão algébrica F i é uma função aritmética exemplo: Π r.a + s.a, r.b 0.1 * s.b (r s) 45 Exemplo de projecção generalizada Quanto é que cada cliente pode gastar até ao seu limite de crédito? Π customer_name, limit credit_balance (credit_info) 46 23
24 Funções de Agregação Recebem um conjunto de valores e devolvem um único valor como resultado avg min max sum count count-distinct ti t 47 Exemplo de agregação Total dos salários dos funcionários G sum(salary) (works) Relação works sum(salary)
25 Outro exemplo de agregação Número de agências com funcionários assalariados G count-distinct(branch_name) (works) count-distinct(branch_name) 3 49 Agrupamento e agregação branch_nameg sum(salary) (works) 50 25
26 Mais agrupamento e agregação branch_nameg sum(salary), max(salary) (works) 51 Junção Externa employee works Junção Natural: employee works 52 26
27 Junção Externa employee works Junção Esquerda: employee works 53 Junção Externa employee works Junção Direita: employee works 54 27
28 Junção Externa employee works Junção Total: employee works 55 O valor null Representa valor desconhecido ou não-existente Em expressões booleanas é o terceiro valor lógico true, false, unknown and true false null null unknown false unknown or true false null null true unknown unknown not true false null false true unknown 56 28
29 O valor null Efeito do valor null selecções e junções depende do resultado lógico projecções, uniões, intersecções e diferenças dois tuplos iguais com nulls são considerados duplicados agregações os nulls são suprimidos para efeito de contas se resultar em conjunto vazio, o resultado é null junção externa insere nulls se necessário 57 Bases de Dados Álgebra Relacional alterações à BD 29
30 Atribuição ( ) Operador que permite guardar resultados em variáveis temporárias ou tabelas existentes exemplo: temp1 R-S (r) temp2 R-S ( (temp1 x s) R-S,S (r) ) result temp1 temp2 59 Modificação da base de dados Remoção Inserção Actualização 60 30
31 Remoção Apagar todas as contas do cliente Smith depositor depositor σ customer name= Smith (depositor) _ Apagar todos os empréstimos com quantias de 0 a 50 loan loan σ amount 0 Λ amount 50 (loan) Apagar todas as contas das agências de Brooklyn r 1 σ branch_city= Brooklyn (account branch) r 2 account_number, branch_name, balance (r 1 ) account account r 2 61 Inserção Criar conta A-973 do cliente Smith, na agência de Perryridge, com saldo inicial 1200 account account U {(A-973, Perryridge, 1200)} depositor depositor U {( Smith, A-973)} Oferecer uma conta surpresa com saldo 200 a todos os clientes com empréstimo na agência de Perryridge r 1 (σ branch_name = Perryridge (borrower loan) ) r 2 loan_number, branch_name (r 1 ) account account U (r 2 x {(200)}) depositor depositor U customer_name, loan_number (r 1 ) 62 31
32 Actualização Aumentar todos os saldos com juros de 5% account account_number, number branch_name, name balance* (account) As contas com saldo superior a recebem 6%, as restantes apenas 5% account account_number, branch_name, balance*1.06 ( σ balance > (account ) ) U account_number, branch_name, balance*1.05 ( σ balance (account) ) 63 32
Álgebra Relacional operações adicionais. Encontrar tuplos que obedecem a uma dada relação questões do tipo: quem já leu todos os livros que eu já li?
Bases de Dados Álgebra Relacional operações adicionais Divisão ( ) Encontrar tuplos que obedecem a uma dada relação questões do tipo: quem já leu todos os livros que eu já li? exemplo: nomes dos clientes
Leia maisBases 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 maisA cláusula order by permite ordenar tuplos exemplo: listar por ordem alfabética os nomes dos clientes com empréstimo na agência de Perryridge
Bases de Dados Elementos da linguagem SQL Ordenação de tuplos orderby A cláusula order by permite ordenar tuplos exemplo: listar por ordem alfabética os nomes dos clientes com empréstimo na agência de
Leia maisOrdenação de tuplos order by
Bases de Dados Elementos da linguagem SQL Ordenação de tuplos order by A cláusula order by permite ordenar tuplos exemplo: listar por ordem alfabética os nomes dos clientes com empréstimo na agência de
Leia maisPrincípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Renomeada para SQL (Structured Query Language)
Bases de Dados Introdução à linguagem SQL História Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R Renomeada para SQL (Structured Query Language) Standards ISO e ANSI SQL-86, SQL-89,
Leia maisBases 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 maisPrincípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Renomeada para SQL (Structured Query Language)
Bases de Dados Introdução à linguagem SQL História Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R Renomeada para SQL (Structured Query Language) Standards ISO e ANSI SQL-86, SQL-89,
Leia maisBases de Dados. Junção de relações. Junção de relações
Bases de Dados Junção de relações Junção de relações Tipicamente usadas na cláusula from SQL oferece várias possibilidades condição da junção determina quais são os atributos a comparar tipo de junção
Leia maisSistemas de Informação e Bases de Dados 2012/2013. Linguagem SQL
Sistemas de Informação e Bases de Dados 2012/2013 Linguagem SQL Alberto Sardinha Sumário Linguagem SQL 1 Operações com strings operador like Exemplo: nomes dos clientes cuja rua possui a sequência Main
Leia maisSistemas de Informação e Bases de Dados 2012/2013. Linguagem SQL
Sistemas de Informação e Bases de Dados 2012/2013 Linguagem SQL Alberto Sardinha Bibliografia Raghu Ramakrishnan, Database Management Systems, Cap. 3 e 5 1 Sumário Linguagem SQL 2 História Princípio dos
Leia maisPrincípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Renomeada para SQL (Structured Query Language)
Bases de Dados Introdução à linguagem SQL História Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R Renomeada para SQL (Structured Query Language) Standards ISO e ANSI SQL-86, SQL-89,
Leia maisBases de Dados. Optimização de planos de execução. Plano de execução
Bases de Dados Optimização de planos de execução Plano de execução O plano de execução define a sequência de operações e o algoritmo para cada operação 2 1 Plano de execução Mas atenção: escolher o algoritmo
Leia maisLinguagem de Definição de Dados Estrutura básica Operações com conjuntos Funções de agregação Valores nulos Subconsultas embebidas Relações derivadas
Capítulo 4: SQL Linguagem de Definição de Dados Estrutura básica Operações com conjuntos Funções de agregação Valores nulos Subconsultas embebidas Relações derivadas Junções Vistas Modificação da Base
Leia maisBases de Dados. Conversão para Modelo Relacional. Diagrama E-A. IST DEI Bases de Dados
Bases de Dados Conversão para Modelo Relacional Diagrama E-A 2 1 Conversão de entidades Entidade forte converte-se numa tabela loan (loan_number, amount) atributos simples mantêm-se chave da tabela é a
Leia maisBases de Dados. Algoritmos. Custo de operação. Algoritmos de selecção. Algoritmo de ordenação. Algoritmos de junção.
Bases de Dados Algoritmos Custo de operação Algoritmos de selecção Algoritmo de ordenação Algoritmos de junção Outras operações Materialização e pipelining 2 1 Bases de Dados Algoritmos de selecção Algoritmos
Leia maisHá vários algoritmos para processar junções nested-loop join block nested-loop join indexed nested-loop join merge-join hash-join
Bases de Dados Algoritmos para junção Algoritmos para junções Há vários algoritmos para processar junções nested-loop join block nested-loop join indexed nested-loop join merge-join hash-join A escolha
Leia maisPrincípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Standards ISO e ANSI SQL-86, SQL-89, SQL-92, SQL:1999, SQL:2003
Bases de Dados Introdução à linguagem SQL História Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R Renomeada para SQL (Structured Query Language) Standards ISO e ANSI SQL-86, SQL-89,
Leia maisLinguagem de Definição de Dados Estrutura básica Operações com conjuntos Funções de agregação Valores nulos Subconsultas embebidas Relações derivadas
Capítulo 4: SQL Linguagem de Definição de Dados Estrutura básica Operações com conjuntos Funções de agregação Valores nulos Subconsultas embebidas Relações derivadas Junções Vistas Modificação da Base
Leia maisBases de Dados. Conversão para Modelo Relacional. Modelo Entidade-Associação. IST DEI Bases de Dados
Bases de Dados Conversão para Modelo Relacional Modelo Entidade-Associação 2 1 Conversão de entidades Entidade forte converte-se numa tabela loan = (loan_number, amount) atributos simples mantêm-se chave
Leia maisProjecção Generalizada
Projecção Generalizada Permite a utilização de funções aritméticas na lista de projecção. Π f1,f 2,...,f n (E) E é uma expressão arbitrária de álgebra relacional. Cada uma das expressões f 1, f 2,...,
Leia maisOperações Estendidas da Álgebra Relacional
Consultas de exemplo Operações Estendidas da Álgebra Relacional Quais os fármacos alguma vez prescritos por cardiologistas? Π nomef (farmacos receitas consultas σ especialidade cardiologia (medicos)) Aumentam
Leia maisAntó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 maisSistemas de Informação e Bases de Dados 2012/2013. Stored Procedures e Triggers
Sistemas de Informação e Bases de Dados 2012/2013 Stored Procedures e Triggers Alberto Sardinha Bibliografia MSDN http://msdn.microsoft.com 1 Funções e Procedimentos SQL suporta funções e procedimentos
Leia maisBases de Dados. Modelo Entidade-Associação. Exemplo do banco. branch. account depositor. loan. borrower customer. IST DEI Bases de Dados
Bases de Dados Modelo Entidade-Associação Exemplo do banco branch account depositor loan borrower customer 2 1 Exemplo do banco branch account depositor loan borrower customer 3 Bases de Dados Entidades
Leia maisLinguagem 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 maisProcesso de desenvolvimento. Compreender o domínio interagir com utilizadores e recolher requisitos Desenho conceptual
Bases de Dados Modelo Entidade-Associação Processo de desenvolvimento Compreender o domínio interagir com utilizadores e recolher requisitos Desenho conceptual modelo Entidade-Associação Requisitos funcionais
Leia maisBases 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 maisRá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 maisCurso 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 maisIntrodução às funções e procedimentos. SQL suporta funções e procedimentos úteis com tipos de dados específicos
Bases de Dados Funções e procedimentos Introdução às funções e procedimentos SQL suporta funções e procedimentos úteis com tipos de dados específicos p.ex. objectos geométricos, imagens intersecção de
Leia maisBases de Dados. Modelo Entidade-Associação. Exemplo do banco. branch. account depositor. loan. borrower customer. IST DEI Bases de Dados
Bases de Dados Modelo Entidade-Associação Exemplo do banco branch account depositor loan borrower customer 2 1 Exemplo do banco branch account depositor loan borrower customer Entidades Associações 3 Exemplo
Leia maisSistemas de Informação e Bases de Dados 2012/2013. Restrições de Integridade em SQL
Sistemas de Informação e Bases de Dados 2012/2013 Restrições de Integridade em SQL Alberto Sardinha Bibliografia Raghu Ramakrishnan, Database Management Systems, Cap. 3 e 5 1 Captura e Tratamento das RIs
Leia maisÁ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 maisOperaçõ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 maisBases de Dados. Normalização. Formas Normais. 1FN : atomicidade dos atributos. 2FN : proíbe dependência parcial de chaves
Bases de Dados Normalização Formas Normais 1FN : atomicidade dos atributos 2FN : proíbe dependência parcial de chaves 3FN e FNBC: impõe dependências a partir de chaves 2 1 1FN Definição um esquema relacional
Leia maisBases de Dados. Revisão da matéria. Programa
Bases de Dados Revisão da matéria Programa Modelação modelo Entidade Associação modelo e álgebra relacionais Implementação SQL básico e avançado desenvolvimento de aplicações normalização Optimização ficheiros
Leia maisBases de Dados. Dependências funcionais. Menos tabelas com mais dados? loan_number amount L L
Bases de Dados Dependências funcionais Menos tabelas com mais dados? borrower customer_id loan_number 23-652 L-100 15-202 L-200 22-439 L-200 loan loan_number amount L-100 6000 L-200 4000 customer_id loan_number
Leia maisBases 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 maisDois parâmetros essenciais t T tempo de transferência de um bloco. assume-se igual para operações de leitura e escrita
Bases de Dados Algoritmos de processamento Custo de operação Dois parâmetros essenciais t T tempo de transferência de um bloco assume-se igual para operações de leitura e escrita t S tempo de localização
Leia maisBases 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 maisBases de Dados. Modelo Entidade-Associação. Processo de desenvolvimento. descrição do tema. características do domínio. requisitos funcionais.
Bases de Dados Modelo Entidade-Associação Processo de desenvolvimento características do domínio requisitos funcionais descrição do tema desenho conceptual modelo E-A conversão p/ modelo relacional modelo
Leia maisCapítulo 4: SQL! Database System Concepts! Silberschatz, Korth and Sudarshan (modificado)!
Capítulo 4: SQL! Linguagem de Definição de Dados" Estrutura básica" Operações com conjuntos" Funções de agregação" Valores nulos" Subconsultas embutidas" Relações derivadas" Junções" Vistas" Modificação
Leia maisAs restrições de integridade garantem a consistência da BD exemplos
Bases de Dados Restrições de integridade Restrições de integridade As restrições de integridade garantem a consistência da BD exemplos RI 1: os números de conta são únicos RI 2: a cidade de uma agência
Leia maisALGEBRA 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 maisSumá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- 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 maisSQL - 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Á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 maisCapítulo 3 Modelo Relacional
Capítulo 3 Modelo Relacional Modelo Relacional Estrutura dos Bancos de Dados Relacionais Álgebra Relacional Cálculo Relacional de Tuplas Cálculo Relacional de Domínio Operações de Álgebra Relacional Estendida
Leia maisEstrutura das Bases de Dados Relacionais Redução a tabelas de um Esquema ER Álgebra Relacional Operações Estendidas da Álgebra Relacional Modificação
Capítulo 3: Modelo Relacional Estrutura das Bases de Dados Relacionais Redução a tabelas de um Esquema ER Álgebra Relacional Operações Estendidas da Álgebra Relacional Modificação da Base de Dados Vistas
Leia maisRestrições ao Domínio Integridade Referencial Asserções Triggers Segurança e Autorizações
Capítulo 5: Integridade e Segurança Restrições ao Domínio Integridade Referencial Asserções Triggers Segurança e Autorizações 1 Restrições ao Domínio As restrições de integridade impõem-se para garantir
Leia maisANÁ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 maisBases de Dados. Modelo Entidade-Associação. Exemplo do banco. IST DEI Bases de Dados
Bases de Dados Modelo Entidade-Associação Exemplo do banco 2 1 Exemplo do banco Entidade Associação 3 Exemplo do banco Conceptualmente branch account depositor loan borrower customer 4 2 Exemplo do banco
Leia maisIEC 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 maisBases de Dados. Índices. Discos. transferência rápida e aos bytes. transferência lenta e em blocos (512B ~ 4KB) memória. disco BD / aplicação
Bases de Dados Índices Discos transferência lenta e em blocos (512B ~ 4KB) transferência rápida e aos bytes memória disco BD / aplicação 2 1 Discos 7200rpm = 120 rot/s 1 5 platters Ø 8.9 cm 50000 ~ 100000
Leia maisÁ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 maisModelo 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 maisBases 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 maisOperaçõ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 maisBanco 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 maisBancos (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 maisModelo 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 maisBases de Dados. Restrições de integridade. Restrições de integridade. As restrições de integridade garantem a consistência da BD exemplos
Bases de Dados Restrições de integridade Restrições de integridade As restrições de integridade garantem a consistência da BD exemplos RI 1: o saldo de uma conta não pode ser null RI 2: nenhuma conta pode
Leia maisFaculdade 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 maisBanco 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 maisLaborató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 maisGBC043 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 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 maisOperações sobre sacos. Álgebra Relacional Extendida.
Operações sobre sacos. Álgebra elacional Extendida. Fernando Lobo ase de Dados, aula 14 1 / 23 Conjuntos versus sacos (bags) Um conjunto não tem elementos repetidos. Um saco pode ter. Em ambos os casos
Leia maisBanco 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 maisSQL 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 maisBases de Dados. Remoções em árvores B + Remoção em árvores B +
Bases de Dados Remoções em árvores B + Remoção em árvores B + Remoção procurar o registo e removê-lo do ficheiro se o apontador ou contentor ficar vazio, remover a entrada (valor, apontador) da folha se
Leia maisUm 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 maisTornou-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 maisBanco 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 maisBanco 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 maisPermite que que funções aritméticas sejam usadas em listas de projeções. Representação: (E) π F1,F 2,...,F n
Banco de Dados / 1 Bacharelado em Sistemas de Informação BANCOS DE DADOS Aula 16 Álgebra Relacional Estendida Banco de Dados / 2 Projeção Generalizada Permite que que funções aritméticas sejam usadas em
Leia maisDefinida pelo American National Standard Institute (ANSI) em 1986
2.3. Linguagens Relacionais SQL Structured Query Language Linguagem para o modelo relacional: Definida pelo American National Standard Institute (ANSI) em 1986 Adoptada em 1987 como um standard internacional
Leia maisCapítulo 3: Modelo Relacional!
Capítulo 3: Modelo Relacional! Estrutura das Bases de Dados Relacionais" Redução a tabelas de um Esquema ER" Álgebra Relacional" Operações Estendidas da Álgebra Relacional" Modificação da Base de Dados"
Leia maisBases de Dados 2012/2013 Funções/procedimentos e triggers. Helena Galhardas 2012 IST. Bibliografia. Manual referência PostgreSQL
Bases de Dados 2012/2013 Funções/procedimentos e triggers em PostgreSQL Helena Galhardas Bibliografia Manual referência PostgreSQL http://www.postgresql.org/docs/9.2/static/ plpgsql.html http://www.postgresql.org/docs/9.2/static/
Leia maisConjuntos de entidades Conjuntos de relações Restrições de Mapeamento Chaves Diagrama ER Opções de desenho Extensões ao modelo ER Exemplo
Capítulo 2: Modelo ER Conjuntos de entidades Conjuntos de relações Restrições de Mapeamento Chaves Diagrama ER Opções de desenho Extensões ao modelo ER Exemplo 1 Diagramas ER (DER) Permitem representar
Leia maisBases de Dados. Índices. Discos. transferência lenta. transferência rápida e em blocos (512B ~ 4KB) e aos bytes. memória.
Bases de Dados Índices Discos transferência lenta transferência rápida e em blocos (512B ~ 4KB) e aos bytes memória disco aplicação 2 1 Discos 7200rpm = 120 rot/s 1 5 platters Ø 8.9 cm 50000 ~ 100000 tracks
Leia mais4. 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 maisO 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- 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 maisIntroduçã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 maisModelo 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 maisUniversidade 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Á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 maisAula 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 maisExercí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 maisBases 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&/ $ C0$ !"#$! +!()!%+$* +,%!()%$-* -. &/$ CDE+7 F0$ 2CDE+7 F20$ 3CDE+7 F30$
!"#$! &'!()* ()!+$* ()$-* -. &/$ &/ $?+ " + $ + .
Leia maisρ x (r) ρ cliente2 (cliente) Pode haver ambiguidade quando a mesma relação aparece mais de uma vez em uma consulta. Nesses casos renomear relação.
Banco de Dados / 1 Bacharelado em Sistemas de Informação BANCOS DE DADOS Aula 14 Álgebra Relacional Operações Renomear e Operações Binárias Banco de Dados / 2 Operação Renomear Pode haver ambiguidade quando
Leia maisComandos de Manipulação
SQL - Avançado Inserção de dados; Atualização de dados; Remoção de dados; Projeção; Seleção; Junções; Operadores: aritméticos, de comparação,de agregação e lógicos; Outros comandos relacionados. SQL SQL
Leia maisBases de Dados 2007/2008 Exame
Exame 25 de Janeiro de 2008 Instituto Superior Técnico Departamento de Engenharia Informática Regras O exame tem a duração de 2h30m. A folha de capa deve ser identificada com o nome e número do aluno.
Leia maisPCS3413. Engenharia de So-ware e Banco de Dados. Aula 17. Escola Politécnica da Universidade de São Paulo
PCS3413 Engenharia de So-ware e Banco de Dados Aula 17 Escola Politécnica da Universidade de São Paulo 1 SQL STRUCTURED QUERY LANGUAGE Manipulação de dados operações de modificam o estado das tabelas:
Leia mais