Вы находитесь на странице: 1из 4

1)

Crie no Oracle as Tabelas abaixo e gere as instrues sql de acordo com as tabelas abaixo.

CREATE TABLE CDS( PRIMARY KEY(cod_cds), cod_cds int not null, nome varchar(50) not null, DataCompra date not null, ValorPago decimal(10,2) not null, LocalCompra varchar(50) not null, Album char(1) );

CREATE TABLE MUSICAS( cod_cds int not null, numero int not null, nome varchar(50) not null, artista varchar(50) not null, tempo varchar (5), PRIMARY KEY (NUMERO), FOREIGN KEY(cod_cds) REFERENCES CDS );

a) Mostrar todos os CDs R: insert into CDS values(1, 'Roberto Carlos', '02.03.2010', '10.50', 'CUIABA/MT', '1'); SELECT * FROM CDS; b) Mostrar os campos nome e data da compra dos cds ordenados por nome (dica : use ORDER BY)

SELECT NOME, DATACOMPRA FROM CDS ORDER BY NOME; c) Mostrar os campos nome e data da compra dos cds classificados por data de compra em ordem decrescente (dica : use ORDER BY) SELECT NOME, DATACOMPRA FROM CDS ORDER BY DATACOMPRA; d) Mostrar o total gasto com a compra dos Cds ( dica : use SUM() ) SELECT VALORPAGO FROM CDS; SELECT SUM (VALORPAGO) FROM CDS; e) Mostrar todas as msicas (todos os campos) do cds cdigo 1 SELECT *FROM MUSICAS WHERE COD_CDS=1; SELECT *FROM MUSICAS WHERE COD_CDS=2; SELECT *FROM MUSICAS WHERE COD_CDS=3;

f) Mostrar o nome do Cd e o nome das msicas de todos Cds SELECT m.* FROM cds c, musicas m WHERE c.cod_cds = m.cod_cds AND m.cod_cds = 1; g) Mostre o nome e o artista de todas msicas cadastradas SELECT CDS.NOME AS NOME, MUSICAS.ARTISTA AS ARTISTA FROM CDS, MUSICAS WHERE CDS.COD_CDS=CDS.COD_CDS; h) Mostre o tempo total de msicas cadastradas ( dica : use SUM() ) SELECT SUM (tempo) FROM musicas;

i) Mostre o nmero, nome e tempo das msicas do cd 5 em ordem de nmero (dica : use ORDER BY)
SELECT m.nome, m.numero, m.tempo FROM cds c, musicas m WHERE c.cod_cds = m.cod_cds AND m.cod_cds = 3 ORDER BY m.numero j) Mostre o tempo total de msicas por cd (dica : use GROUP BY)

SELECT c.nome, SUM (m.tempo) FROM cds c, musicas m WHERE c.cod_cds = m.cod_cds GROUP BY c.nome; l) Mostre a quantidade de msicas cadastradas ( dica : use COUNT(*) ) SELECT COUNT (*) AS QUANTIDADE FROM musicas; m) Mostre a mdia de durao das msicas cadastradas ( dica : use AVG() ) SELECT AVG(TEMPO) FROM musicas; n) Mostre a quantidade de Cds ( dica : use COUNT(*) ) SELECT COUNT(*) AS QUANTIDADE FROM CDS; o) Mostre o nome das msicas do artista Jos Pedro SELECT *FROM MUSICAS WHERE ARTISTA = 'ROBERTO CARLOS'; p) Mostre a quantidade de msicas por cds ( dica : use COUNT(*) e GROUP BY ) SELECT COUNT (*) FROM musicas m, cds c WHERE c.cod_cds = m.cod_cds GROUP BY m.cod_cds q) Mostre o nome de todos cds comprados no Submarino SELECT * FROM cds WHERE LocalCompra = 'CUIABA/MT';

r) Mostre o nome do cd e o nome da primeira msicas de todos cds SELECT DISTINCT m.nome, c.nome FROM cds c, musicas m WHERE c.cod_cds = m.cod_cds; s) Mostre uma listagens de msicas em ordem alfabtica (dica : use ORDER BY) SELECT * FROM cds WHERE album = 1; t) Mostrar todos os cds que so lbuns SELECT * FROM cds WHERE album = 1; u) Mostre o cd que custou mais caro ( dica : use MAX() ) SELECT MAX(ValorPago) FROM cds;

Kiteria_anjonegro@hotmail.com

Obs.: Caso precisem se lembrar da SQL : http://www.criarweb.com/sql/ Usem o arquivo pdf j enviado sobre SQL se for necessrio.