A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Banco de Dados Introdução à Linguagem SQL – Junção Manipulação com 3 Tabelas ou + em relacionamentos n/1 Esta aula é baseada em material produzido pelo.

Apresentações semelhantes


Apresentação em tema: "Banco de Dados Introdução à Linguagem SQL – Junção Manipulação com 3 Tabelas ou + em relacionamentos n/1 Esta aula é baseada em material produzido pelo."— Transcrição da apresentação:

1 Banco de Dados Introdução à Linguagem SQL – Junção Manipulação com 3 Tabelas ou + em relacionamentos n/1 Esta aula é baseada em material produzido pelo professor Valter Camargo (ICMC-USP-SC)

2 Banco Pedido ClientePedido Realiza itemPedido Possui Produto corresponde N 1 N 1 Data 1N codigo nome ruanumero codigodescricao numero quantidade codigo descricao preco valor Imagine a necessidade de se obter a quantidade de itens de um determinado cliente. Isso será uma consulta que envolverá três tabelas, porém, em relacionamentos n/1 cod_cliente cod_pedido cod_produto

3 Banco Pedido ClientePedido Realiza itemPedido Possui Produto corresponde N 1 N 1 Data 1N codigo nome ruanumero codigodescricao numero quantidade codigo descricao preco valor Deverá ser feito um Join que percorre as três tabelas envolvidas na consulta através das estrangeiras. cod_cliente cod_pedido cod_produto

4 Banco Pedido ClientePedido Realiza itemPedido Possui Produto corresponde N 1 N 1 Data 1N codigo nome ruanumero codigodescricao numero quantidade codigo descricao preco valor cod_cliente cod_pedido cod_produto SELECT count(numero), nome FROM Cliente, Pedido, itemPedido WHERE Cliente.codigo = Pedido.cod_cliente and itemPedido.cod_pedido = pedido.codigo group by nome

5 Banco Pedido ClientePedido Realiza itemPedido Possui Produto corresponde N 1 N 1 Data 1N codigo nome ruanumero codigodescricao numero quantidade codigo descricao preco valor cod_cliente cod_pedido cod_produto Imagine agora a necessidade de se obter o nome dos produtos comprados por cada cliente. Deve ser feito uma consulta que envolve quatro tabelas, pois, deve-se ir navegando pelas chaves estrangeiras até chegar à tabela desejada.

6 Banco Pedido ClientePedido Realiza itemPedido Possui Produto corresponde N 1 N 1 Data 1N codigo nome ruanumero codigodescricao numero quantidade codigo descricao preco valor cod_cliente cod_pedido cod_produto SELECT nome, descricao FROM Cliente, Pedido, itemPedido, Produto WHERE Cliente.codigo = Pedido.cod_cliente and itemPedido.cod_pedido = Pedido.codigo and itemPedido.cod_produto = Produto.codigo

7 Exercícios 1. Necessita-se de um relatório que apresente nome do cliente e nome dos produtos comprados pelo cliente. 2. Necessita-se de um relatório que apresente o nome do cliente e quantidade de produtos comprados pelo cliente. 3. Necessita-se de um relatório que apresente o nome do cliente e a quantidade de pedidos daquele cliente. Porém só é de interesse clientes que fizeram mais de 2 pedidos e que moram em um dos seguintes bairros: Jardim Paulista, Jardim do Bosque, Centro ou Tijuco Preto.

8 Exercícios 4. Necessita-se saber o nome do cliente, a descrição dos pedidos a quantidade de itens de cada pedido. Organize o resultado em ordem alfabética de nome do cliente. 5. Necessita-se saber para cada cliente, quanto ele gastou. Utilize o preco do produto para o cálculo. 6. Selecionar o nome dos clientes, a descricao de seus pedidos e a quantidade de itens desses pedidos para os pedidos feitos entre os dias 06 e 13 de maio. Porém só é de interesse os clientes que fizeram pedidos com mais de 3 itens, inclusive.

9 Exercícios 7. Necessita-se de um relatório que mostre a quantidade financeira vendida por dia. Porém só é de interesse os dias que venderam mais de R$ 7,00. 8. Necessita-se visualizar o nome dos clientes que iniciam com a letra A e que moram ou no Jardim do Bosque ou no Jardim Paulista. 9. Visualizar a descrição dos produtos que foram vendidos 10. Necessita-se saber qual foi o bairro cujas compras possui o maior valor financeiro

10 FIM


Carregar ppt "Banco de Dados Introdução à Linguagem SQL – Junção Manipulação com 3 Tabelas ou + em relacionamentos n/1 Esta aula é baseada em material produzido pelo."

Apresentações semelhantes


Anúncios Google