Buscar

Exercícios de Álgebra Relacional

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 20 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 20 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 20 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1
Professores:
Geraldo Xexéo
Geraldo Zimbrão
Conteúdo:
Exercícios de Álgebra Relacional
Aula 014
2
Exercícios
Nomes de fornecedores da parte P21)
Nomes de fornecedores que fornecem ao menos uma parte 
vermelha
2)
Nomes de fornecedores que fornecem todas as partes3)
Números dos fornecedores que fornecem todas as partes 
fornecidas pelo fornedor de número 2
4)
Todos os pares de fornecedores na mesma cidade5)
Nomes de fornecedores que não fornecem a parte número 26)
3
Solução do Exemplo 1
Nomes de fornecedores da parte P2
(( PEDIDOS JOIN FORNECEDORES ) 
 WHERE NUMP=2) [NOMEF]
4
Solução do Exemplo 1 (Passo 1)
(( PEDIDOS JOIN FORNECEDORES ) WHERE NUMP=2) [NOMEF]
FORNECEDORES JOIN PEDIDOS
NUMF NUMPR QUANTIDADE
1
1
2
2
2
200
300
400
500
600
2 100
2 600
NUMP
1
1
3
3
3
3
3
1
4
1
2
3
4
5
2 5003 6
2 3003 7
2 4005 2
3 5003 1
3 4004 2
4 6006 3
4 3006 7
5 1002 2
5 7005 7
5 5006 2
5 2001 7
5 3003 2
5 4004 4
5 1005 4
5 5006 4
NOMEF STATUS CIDADE
Selma 20 São Paulo
João 10 Rio de Janeiro
João 10 Rio de Janeiro
João 10 Rio de Janeiro
João 10 Rio de Janeiro
João 10 Rio de Janeiro
João 10 Rio de Janeiro
João 10 Rio de Janeiro
João 10 Rio de Janeiro
João 10 Rio de Janeiro
Branco 30 Rio de Janeiro
Branco 30 Rio de Janeiro
Carlos 20 São Paulo
Carlos 20 São Paulo
Aline 30 Belo Horizonte
Aline 30 Belo Horizonte
Aline 30 Belo Horizonte
Aline 30 Belo Horizonte
Aline 30 Belo Horizonte
Aline 30 Belo Horizonte
Aline 30 Belo Horizonte
Aline 30 Belo Horizonte
5
Solução do Exemplo 1 (Passo 2)
(( PEDIDOS JOIN FORNECEDORES ) WHERE NUMP=2) [NOMEF]
(FORNECEDORES JOIN PEDIDOS) WHERE NUMP=2
NUMF NUMPR QUANTIDADENUMP
5 1002 2
NOMEF STATUS CIDADE
Aline 30 Belo Horizonte
6
Solução do Exemplo 1 (Passo 2,3)
(( PEDIDOS JOIN FORNECEDORES ) WHERE NUMP=2) [NOMEF]
(( PEDIDOS JOIN FORNECEDORES ) WHERE NUMP=2) [NOMEF]
(FORNECEDORES JOIN PEDIDOS) WHERE NUMP=2
NUMF NUMPR QUANTIDADENUMP
5 1002 2
NOMEF STATUS CIDADE
Aline 30 Belo Horizonte
RESULTADO
NOMEF
Aline
7
Solução do Exemplo 2
Nomes de fornecedores que fornecem ao menos uma parte 
vermelha
((( PARTES WHERE COR="Vermelha") JOIN 
 PEDIDOS) [ NUMF] JOIN FORNECEDORES)
 [NOMEF]
8
Solução do Exemplo 2 (Passo 1)
((( PARTES WHERE COR="Vermelha") JOIN PEDIDOS) [ NUMF] JOIN 
FORNECEDORES) [NOMEF]
PARTES WHERE COR="Vermelha"
NUMP NOMEP COR CIDADE
1
4
Caixa
Parafuso
Vermelha
Vermelha
São Paulo
São Paulo
6 Alavanca Vermelha São Paulo
PESO
12
14
19
9
Solução do Exemplo 2 (Passo 2,3)
((( PARTES WHERE COR="Vermelha") JOIN PEDIDOS) [ NUMF] JOIN 
FORNECEDORES) [NOMEF]
((( PARTES WHERE COR="Vermelha") JOIN PEDIDOS) [ NUMF] JOIN 
FORNECEDORES) [NOMEF]
(PARTES WHERE COR="Vermelha") JOIN PEDIDOS
NUMP NOMEP COR CIDADE
4 Parafuso Vermelha São Paulo
6 Alavanca Vermelha São Paulo
PESO
14
19
NUMPRNUMF QUANTIDADE
4 6003
4 3007
5 5002
5 5004
6 Alavanca Vermelha São Paulo19
6 Alavanca Vermelha São Paulo19
6 Alavanca Vermelha São Paulo19
1 Caixa Vermelha São Paulo12
1 Caixa Vermelha São Paulo12
1 Caixa Vermelha São Paulo12
5 4004
1 2001
1 3004
5 2004
NUMF
1
4
5
10
Solução do Exemplo 2 (Passo 4,5)
((( PARTES WHERE COR="Vermelha") JOIN PEDIDOS) [ NUMF] JOIN 
FORNECEDORES) [NOMEF]
((( PARTES WHERE COR="Vermelha") JOIN PEDIDOS) [ NUMF] JOIN 
FORNECEDORES) [NOMEF]
NUMF NOMEF STATUS CIDADE
1
4
5
Selma
Carlos
Aline
20
20
30
São Paulo
São Paulo
Belo Horizonte
NOMEF
Selma
Carlos
Aline
11
Solução Alternativa do Exemplo 2
Nomes de fornecedores que fornecem ao menos uma parte 
vermelha
((( PARTES WHERE COR="Vermelha) [NUMP] 
 JOIN PEDIDOS) JOIN FORNECEDORES) 
 [NOMEF]
12
Solução do Exemplo 3
Nomes de fornecedores que fornecem todas as partes
((PEDIDOS [NUMP,NUMF] DIVIDEBY PARTES
 [NUMP]) JOIN FORNECEDORES) [NOMEF]
13
Solução do Exemplo 3 (Passo 1,2,3)
((PEDIDOS [NUMP,NUMF] DIVIDEBY PARTES [NUMP]) 
 JOIN FORNECEDORES) [NOMEF]
NUMF
1
1
2
2
2
2
2
NUMP
1
1
3
3
3
3
3
2 3
2 3
2 5
3 3
3 4
4 6
4 6
5 2
5 5
5 6
5 1
5 3
5 4
5 5
5 6
NUMP
1
2
3
4
5
6
NUMF
5
14
Solução do Exemplo 3 (Passo 4,5)
((PEDIDOS [NUMP,NUMF] DIVIDEBY PARTES [NUMP]) JOIN FORNECEDORES) [NOMEF]
((PEDIDOS [NUMP,NUMF] DIVIDEBY PARTES [NUMP]) JOIN FORNECEDORES) [NOMEF]
NUMF NOMEF STATUS CIDADE
5 Aline 30 Belo Horizonte
NOMEF
Aline
15
Solução do Exemplo 4
Números dos fornecedores que fornecem todas as partes 
fornecidas pelo fornecedor de número 2
PEDIDOS [NUMP,NUMF] DIVIDEBY 
 (PEDIDOS WHERE NUMF = 2) [NUMP]
16
Solução do Exemplo 4 (Passos)
PEDIDOS [NUMP,NUMF] DIVIDEBY 
 (PEDIDOS WHERE NUMF = 2) [NUMP]
NUMF
1
1
2
2
2
2
2
NUMP
1
1
3
3
3
3
3
2 3
2 3
2 5
3 3
3 4
4 6
4 6
5 2
5 5
5 6
5 1
5 3
5 4
5 5
5 6
PEDIDOS
NUMPRNUMF QUANTIDADE
2
2
2
400
500
600
2 100
2 600
NUMP
3
3
3
3
3
1
2
3
4
5
2 5003 6
2 3003 7
2 4005 2
NUMF
2
5
NUMP
3
5
17
Solução dos Exemplos 5
Todos os pares de fornecedores na mesma cidade
(((FORNECEDORES RENAME NUMF AS 
 PRIMEIRO) [PRIMEIRO,CIDADE] JOIN 
 (FORNECEDORES) [NUMF,CIDADE])
 WHERE PRIMEIRO<NUMF ) 
 [PRIMEIRO,NUMF]
18
Solução do Exemplo 5 (Passos)
(((FORNECEDORES RENAME NUMF AS PRIMEIRO) [PRIMEIRO,CIDADE] JOIN 
(FORNECEDORES) [NUMF,CIDADE]) WHERE PRIMEIRO<NUMF ) [PRIMEIRO,NUMF]
4
PRIMEIRO
FORNECEDORES
NOMEF STATUS CIDADE
1
2
3
4
5
Selma
João
Branco
Carlos
Aline
20
10
30
20
30
São Paulo
Rio de Janeiro
Rio de Janeiro
São Paulo
Belo Horizonte
1
2
PRIMEIRO CIDADE
1
2
3
4
5
São Paulo
Rio de Janeiro
Rio de Janeiro
São Paulo
Belo Horizonte
3 NUMF CIDADE
5
2
3
2
3
Belo Horizonte
Rio de Janeiro
Rio de Janeiro
Rio de Janeiro
Rio de Janeiro
PRIMEIRO
5
2
3
3
2
1
4
1
4
NOMEF
Aline
João
Branco
João
Branco
Selma
Carlos
Selma
Carlos
STATUS
30
10
30
10
30
20
20
20
20
São Paulo
São Paulo
São Paulo
São Paulo
4
1
1
4
NUMF CIDADE
3 Rio de Janeiro
PRIMEIRO
2
4
NOMEF
Branco
Carlos
STATUS
30
20 São Paulo 1
Resultado
NUMF
3
PRIMEIRO
2
4 1
19
Solução dos Exemplos 6
Nomes de fornecedores que não fornecem a parte número 2
((FORNECEDORES [NUMF] MINUS (PEDIDOS 
 WHERE NUMP=2) [NUMF] JOIN 
 FORNECEDORES) [NOMEF]
20
Solução do Exemplo 6 (Passos)
((FORNECEDORES [NUMF] MINUS (PEDIDOS WHERE NUMP=2) [NUMF]
JOIN FORNECEDORES) [NOMEF]
PEDIDOS WHERE NUMP=2
NUMPRNUMF QUANTIDADENUMP
5 1002 2
2 3 NUMF
5
NOMEF
Selma
João
Branco
Carlos
Resultado
NUMF NOMEF STATUS CIDADE
1
2
3
4
Selma
João
Branco
Carlos
20
10
30
20
São Paulo
Rio de Janeiro
Rio de Janeiro
São Paulo
5
NUMF
1
2
3
4
5
1
4 NUMF
1
2
3
4

Outros materiais