-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathprimeiro_projeto_sql.sql
More file actions
63 lines (46 loc) · 1.67 KB
/
primeiro_projeto_sql.sql
File metadata and controls
63 lines (46 loc) · 1.67 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
## Primeiro projeto sql - Desafio DIO
# Recuperando dados com SELECT Statement:
# Recuperar as informações de todos os clientes
SELECT *
FROM cliente;
# Recuperar as informações dos produtos
SELECT *
FROM produto;
# Utilizando where para aplicar filtros
# Recuperando pedidos do cliente com id=001
SELECT *
FROM pedido
WHERE cliente_id = 001;
# Recuperar produtos com preço acima de 20.00
SELECT *
FROM produto
WHERE preco > 20.00;
# Utilizando group by para recuperar o valor total de um pedido
SELECT pedido_id, SUM(quantidade * preco) AS valor_total
FROM item_pedido
JOIN produto ON ItemPedido.produto_id = Produto.produto_id
WHERE pedido_id = 123
GROUP BY pedido_id;
# Recuperar os produtos ordenados por preço
SELECT *
FROM produto
ORDER BY preco DESC;
# Condições de filtros aos grupos – HAVING Statement
# Recuperar fornecedores que têm produtos com estoque abaixo de 100 unidades
SELECT fornecedor.nome, COUNT(*) AS produtos_com_pouco_estoque
FROM fornecedor
JOIN estoque ON fornecedor.fornecedor_id = estoque.fornecedor_id
WHERE estoque.quantidade < 100
GROUP BY fornecedor.nome
HAVING produtos_com_pouco_estoque > 0;
# Recuperar os produtos e seus fornecedores
SELECT produto.nome AS nome_produto, fornecedor.nome AS nome_fornecedor
FROM produto
JOIN estoque ON produto.produto_id = estoque.produto_id
JOIN fornecedor ON estoque.fornecedor_id = Fornecedor.fornecedor_id;
# Recuperar os clientes que fizeram mais de 2 pedidos
SELECT cliente.nome, COUNT(pedido.pedido_id) AS qtd_pedidos
FROM cliente
JOIN pedido ON cliente.cliente_id = pedido.cliente_id
GROUP BY cliente.nome
HAVING qtd_pedidos > 2;