Aula prática 3 consultas sql (com esquema e povoamento)

3
Universidade Federal do Ceará Bacharelado em Sistemas e Mídias Digitais Bancos de Dados Multimídia Ticianne Darin ATIVIDADE PRÁTICA 2 Considere os seguintes esquemas de relação: F (F#, FNOME, CIDADE) (F = Fornecedores) P (P#, PNOME,COR) (P = Peça) J ( J#, JNOME, CIDADE) (J = Projetos) FPJ (F#, P#, J#, QTD) 1. Especifique as seguintes consultas em SQL . a) Encontre todas as combinações de número de fornecedor e número de projeto tais que fornecedor e projeto estão localizados na mesma cidade b) Encontre para cada peça fornecida: o nome da peça, a quantidade máxima e quantidade mínima em que esta peça é fornecida, excluindo as entregas feitas pelo fornecedor F1 c) Encontre os números de todas as peças que são fornecidas por mais de um fornecedor d) Encontre a quantidade total fornecida por cada fornecedor. Nessa relação deve constar mesmo os fornecedores que não fornecem para nenhum projeto. e) Encontre os números dos fornecedores que estão localizados na mesma cidade que o fornecedor F1. f) Encontre os números dos projetos que usam pelo menos uma das peças fornecidas pelo fornecedor F1. g) Encontre os nomes dos fornecedores que fornecem a peça P2 h) Encontre os números dos projetos que são fornecidos somente pelo fornecedor F1. i) Encontre os nomes dos fornecedores que fornecem todas as peças j) Encontre para todas as peças tais que o total fornecido é maior do que 400: o número da peça, a sua cor e a quantidade máxima fornecida.

Transcript of Aula prática 3 consultas sql (com esquema e povoamento)

Page 1: Aula prática 3   consultas sql (com esquema e povoamento)

Universidade Federal do Ceará Bacharelado em Sistemas e Mídias Digitais

Bancos de Dados Multimídia Ticianne Darin

ATIVIDADE PRÁTICA 2 Considere os seguintes esquemas de relação: F (F#, FNOME, CIDADE) (F = Fornecedores)

P (P#, PNOME,COR) (P = Peça)

J ( J#, JNOME, CIDADE) (J = Projetos)

FPJ (F#, P#, J#, QTD)

1. Especifique as seguintes consultas em SQL .

a) Encontre todas as combinações de número de fornecedor e número de projeto tais

que fornecedor e projeto estão localizados na mesma cidade b) Encontre para cada peça fornecida: o nome da peça, a quantidade máxima e

quantidade mínima em que esta peça é fornecida, excluindo as entregas feitas pelo fornecedor F1

c) Encontre os números de todas as peças que são fornecidas por mais de um

fornecedor d) Encontre a quantidade total fornecida por cada fornecedor. Nessa relação deve

constar mesmo os fornecedores que não fornecem para nenhum projeto. e) Encontre os números dos fornecedores que estão localizados na mesma cidade que o

fornecedor F1. f) Encontre os números dos projetos que usam pelo menos uma das peças fornecidas

pelo fornecedor F1. g) Encontre os nomes dos fornecedores que fornecem a peça P2 h) Encontre os números dos projetos que são fornecidos somente pelo fornecedor F1. i) Encontre os nomes dos fornecedores que fornecem todas as peças j) Encontre para todas as peças tais que o total fornecido é maior do que 400: o número

da peça, a sua cor e a quantidade máxima fornecida.

Page 2: Aula prática 3   consultas sql (com esquema e povoamento)

k) Encontre o fornecedor que fornece a maior quantidade da peça P1. Desafios: a) Encontre os números dos projetos fornecidos com a peça P1 em uma quantidade

média maior do que a maior quantidade que qualquer peça é fornecida para o projeto J1.

b) Encontre os números dos fornecedores que fornecem a mesma peça para todos os

projetos.

c) Para cada peça obtenha o número total de projetos que usam esta peça, a quantidade total usada para cada projeto e a quantidade total usada.

d) Encontre os fornecedores que fornecem todas as peças usadas no projeto J1. USAR O SEGUINTE ESQUEMA E POVOAMENTO: create database industria; use industria; create table F( Fcode varchar(10) not null, Fnome varchar(30), cidade varchar(20), constraint F_pk primary key(Fcode) ); create table P( Pcode varchar(10) not null, Pnome varchar(30), cor varchar(20), constraint P_pk primary key(Pcode) ); create table J( Jcode varchar(10) not null, Jnome varchar(30), cidade varchar(20), constraint J_pk primary key(Jcode) ); create table FPJ( Fcode varchar(10) not null, Pcode varchar(10) not null, Jcode varchar(10) not null, qtd int,

Page 3: Aula prática 3   consultas sql (com esquema e povoamento)

constraint FPJ_pk1 primary key(Jcode, Pcode, Fcode), constraint FPJ_fk1 foreign key (Fcode) references F(Fcode) ON DELETE CASCADE ON UPDATE CASCADE, constraint FPJ_fk2 foreign key (Jcode) references J(Jcode) ON DELETE CASCADE ON UPDATE CASCADE, constraint FPJ_fk3 foreign key (Pcode) references P(Pcode) ON DELETE CASCADE ON UPDATE CASCADE ); insert into F values('010', 'F1', 'Petrópolis'); insert into F values('011', 'F2', 'Fortaleza'); insert into F values('012', 'F3', 'Cuiabá'); insert into F values('013', 'F4', 'Manaus'); insert into F values('014', 'F5', 'Santa Rita'); insert into P values('110', 'P1', 'verde-agua'); insert into P values('111', 'P2', 'roxo-melão'); insert into P values('112', 'P3', 'azul-manteiga'); insert into P values('113', 'P4', 'azul flor-de-milho'); insert into P values('114', 'P5', 'branco fantasma'); insert into J values('210', 'J1', 'Petrópolis'); insert into J values('211', 'J2', 'Fortaleza'); insert into J values('212', 'J3', 'Rio de Janeiro'); insert into J values('213', 'J4', 'Salvador'); insert into J values('214', 'J5', 'Amanaiara'); insert into FPJ values('010', '114', '211',100); insert into FPJ values('011', '113', '212',900); insert into FPJ values('012', '110', '212',20); insert into FPJ values('013', '112', '213',500); insert into FPJ values('014', '110', '214',399); insert into FPJ values('011', '114', '212',400); insert into FPJ values('011', '112', '213',500); insert into FPJ values('012', '110', '214',80); insert into FPJ values('013', '111', '212',100); insert into FPJ values('014', '111', '213',99); insert into FPJ values('010', '113', '213',12); insert into FPJ values('011', '111', '212',90); insert into FPJ values('010', '112', '211',49);