Você está na página 1de 11

Banco de Dados II

Aula 4
Revisão

Alexandre Garcia Aguado Este trabalho está licenciado com uma Licença Creative Commons -
alexandre.aguado@ifsp.edu.br Atribuição-NãoComercial 4.0 Internacional.
Banco de Dados II

1 – Correção da atividade 2
2 – Subqueries
3 – Views
4 – Atividade 3
Correção da Atividade 2
1)Faça uma consulta que retorne ordenado a descrição das categorias de códigos e
quantas vezes elas são utilizadas para codificar algum texto;
2)Faça uma consulta que retorne qual o total (soma) de trechos codificados em todo o
sistema;
3)Faça uma consulta que retorne nome de arquivo, texto codificado e descrição do código
de todos os trechos codificados tanto na categoria Ponto Negativos como também na
Aprendizados
4)Faça uma consulta que retorne todos os textos (não arquivos) que foram codificados
mais de uma vez. Mostre também neste retorno, quais códigos foram utilizados para
codifica-lo.
5)Faça uma consulta que mostre todos os trechos codificados na categoria Aprendizados,
porém, que não foram codificados na categoria Ponto Negativos
Vocês conhecem subqueries?
Subqueries
Uma subquery é um SELECT que é utilizado como ponto de partida para outro
Select, Update, Delete ou Insert.
Exemplo:

*Subquery em parênteses!
Subqueries
Vantagens:
– Permitem consultas que estão estruturadas de modo que é possível isolar cada
parte da consulta.
– Fornecem modos alternativos de realizar operações que, de outra forma,
exigiriam JOINS ou Junções Simples;
Exemplos:

SELECT * FROM t1 SELECT * FROM t1

WHERE column1 = (SELECT MAX(column2) FROM t2); WHERE id_x != SOME (SELECT id_y FROM t2);

SELECT * FROM t1 SELECT * FROM t1

WHERE id_x = ANY (SELECT id_y FROM t2); WHERE id_x != ALL (SELECT id_y FROM t2);

SELECT * FROM t1 SELECT * FROM t1

WHERE id_x IN (SELECT id_y FROM t2); WHERE NOT EXISTS (SELECT * FROM t2);
Views
Views
As views são objetos do banco de dados que funcionam como se fossem tabelas virtuais,
criadas a partir de cláusulas SELECT!

CREATE VIEW arq_cod AS

select a.nome as 'Arquivo', c.texto as 'Trecho', c.idcodigo as 'Codigo'

from arquivo a, codificacao c

where c.idarquivo = a.idarquivo

Order by Arquivo

- - para ver se criou dê o comando

show tables

- - para apagar a view dê o comando

drop view [nome da view]


Atividade assíncrona 3
0) Crie o banco de dados abaixo:
Atividade assíncrona 3
1) Insira no banco de dados ao menos 4 times de futebol e consequentemente a informação de ao menos 5
jogadores para cada time ( e suas nacionalidades ).
2) Considerando esta base faça as seguintes consultas ( Usando SubQuery ):
1) Lista do nome dos jogadores cuja nacionalidade é ‘Brasileiro’;
2) Nome e Gols Feitos dos jogadores do líder do campeonato;
3) Nome e Gols Feitos dos jogadores dos 4 últimos colocados do campeonato;
4) Nome e Nacionalidade dos jogadores dos times paulistas;
3) Crie as seguintes VIEWS:
1) Uma view que mostre a classificação do campeonato!
2) Uma view que mostre a artilharia do campeonato (Jogador e Time)
3) Uma view que mostre o jogador que mais jogou em cada time
Boa Semana!