# SESSION FOUR: Query or not to Query? QUERY!!!! Author: Igor Lima Charles N°: 18 Grade: INFOA ```sql= -- DESAFIO 1 SELECT nm_categoria, nm_produto, vl_preco FROM tb_categoria C JOIN tb_produto P ON C.id_categoria = P.id_categoria ORDER BY C.nm_categoria, P.nm_produto; -- DESAFIO 2 SELECT nm_categoria, nm_produto, vl_preco, qtd_minima, qtd_disponivel FROM tb_categoria C JOIN tb_produto P ON C.id_categoria = P.id_categoria JOIN tb_estoque E ON E.id_produto = P.id_produto WHERE E.qtd_disponivel < E.qtd_minima ORDER BY C.nm_categoria, P.nm_produto; -- DESAFIO 3 SELECT nm_categoria, nm_produto, vl_preco, qtd_minima, qtd_disponivel FROM tb_categoria C JOIN tb_produto P ON C.id_categoria = P.id_categoria JOIN tb_estoque E ON E.id_produto = P.id_produto WHERE C.nm_categoria LIKE '%%' AND P.nm_produto LIKE '%%' ORDER BY P.vl_preco DESC; -- DESAFIO 4 SELECT nm_cliente, ds_cpf, ds_endereco, nr_endereco, ds_cidade FROM tb_cliente C JOIN tb_endereco E on C.id_endereco = E.id_endereco WHERE C.nm_cliente LIKE '%%' AND E.ds_cidade LIKE '%%' ORDER BY ds_cidade; -- DESAFIO 5 SELECT dt_venda, nm_cliente, ds_nota_fiscal, tp_forma_pagamento, ds_endereco, nr_endereco FROM tb_venda v JOIN tb_cliente c ON v.id_cliente = c.id_cliente JOIN tb_endereco e ON v.id_endereco_entrega = e.id_endereco WHERE v.dt_venda BETWEEN '2020-01-01' AND '2021-01-01' ORDER by id_venda; -- DESAFIO 6 SELECT dt_venda, nm_cliente, ds_nota_fiscal, tp_forma_pagamento, ds_endereco, nr_endereco FROM tb_venda v JOIN tb_cliente c ON v.id_cliente = c.id_cliente JOIN tb_endereco e ON v.id_endereco_entrega = e.id_endereco WHERE c.nm_cliente LIKE '%%' OR v.ds_nota_fiscal LIKE '%%' ORDER by id_venda; -- DESAFIO 7 SELECT dt_venda, nm_cliente, ds_nota_fiscal, tp_forma_pagamento, ds_endereco, nr_endereco FROM tb_venda v JOIN tb_cliente c ON v.id_cliente = c.id_cliente JOIN tb_endereco e ON v.id_endereco_entrega = e.id_endereco WHERE v.dt_venda OR e.ds_endereco ORDER by id_venda; -- DESAFIO 8 SELECT V.id_venda, V.dt_venda, C.nm_cliente, V.ds_nota_fiscal, E.ds_endereco, E.nr_endereco, P.nm_produto, Ct.nm_categoria, P.vl_preco FROM tb_venda V JOIN tb_cliente C ON V.id_cliente = C.id_cliente JOIN tb_endereco E ON E.id_endereco = C.id_endereco JOIN tb_venda_item Vi ON Vi.id_venda_item = V.id_venda JOIN tb_produto P ON P.id_produto = Vi.id_produto JOIN tb_categoria Ct ON Ct.id_categoria = P.id_categoria WHERE V.id_venda LIKE '%%' AND V.ds_nota_fiscal LIKE '%%' ORDER BY V.id_venda; -- DESAFIO 9 SELECT V.id_venda, V.dt_venda, C.nm_cliente, V.ds_nota_fiscal, E.ds_endereco, E.nr_endereco, P.nm_produto, Ct.nm_categoria, P.vl_preco FROM tb_venda V JOIN tb_cliente C ON V.id_cliente = C.id_cliente JOIN tb_endereco E ON E.id_endereco = C.id_endereco JOIN tb_venda_item Vi ON Vi.id_venda_item = V.id_venda JOIN tb_produto P ON P.id_produto = Vi.id_produto JOIN tb_categoria Ct ON Ct.id_categoria = P.id_categoria WHERE V.dt_venda LIKE '%%' ORDER BY P.nm_produto; -- Desafio 10 SELECT DISTINCT nm_produto, nm_categoria, vl_preco FROM tb_produto P JOIN tb_categoria C ON P.id_categoria = C.id_categoria JOIN tb_venda_item Vi On Vi.id_produto = P.id_produto JOIN tb_venda V ON V.id_venda = Vi.id_venda WHERE V.dt_venda Like '%%' ORDER BY P.nm_produto; -- DESAFIO 11 SELECT DISTINCT P.id_produto, P.nm_produto, C.nm_categoria, P.vl_preco FROM tb_produto P JOIN tb_categoria C ON P.id_categoria = C.id_categoria WHERE P.id_produto NOT IN (SELECT id_produto FROM tb_venda_item); -- DESAFIO 12 SELECT C.id_categoria, C.nm_categoria, P.vl_preco FROM tb_produto P RIGHT JOIN tb_categoria C on P.id_categoria = C.id_categoria; -- Desafio 14 select id_venda, dt_venda, nm_cliente, ds_nota_fiscal, ds_endereco, nr_endereco, nm_categoria, nm_produto, vl_preco from tb_venda v left join tb_cliente c on c.id_cliente = v.id_cliente join tb_endereco en on v.id_endereco = en.id_endereco where v.id_cliente is null order by v.id_venda; -- Desafio 13 SELECT C.id_cliente, C.nm_cliente, C.ds_cpf FROM tb_cliente C LEFT JOIN tb_endereco E ON C.id_endereco = E.id_endereco where E.id_endereco IS NULL; -- Desafio 15 select v.id_venda, count (vi.id_venda_item) qtd_items from tb_venda v join tb_venda_item vi on v.id_venda = vi.id_venda group by v.id_venda; -- Desafio 16 select v.id_venda, count (vi.id_venda_item) qtd_items , sum (p.vl_preco) vl_total_vendas from tb_venda v join tb_venda_item vi on v.id_venda = vi.id_venda join tb_produto p on p.id_produto = vi.id_produto group by v.id_venda; -- Desafio 17 select v.id_venda, v.dt_venda, c.nm_cliente, count (vi.id_venda_item) qtd_items , sum (p.vl_preco) vl_total_vendas from tb_venda v join tb_venda_item vi on v.id_venda = vi.id_venda join tb_produto p on p.id_produto = vi.id_produto join tb_cliente c on c.id_cliente = v.id_cliente where v.dt_venda between '2020-05-01' and '2021-12-31' group by v.id_venda, v.dt_venda, c.nm_cliente; -- Desafio 18 select v.id_venda, v.dt_venda, c.nm_cliente, count (vi.id_venda_item) qtd_items , sum (p.vl_preco) vl_total_vendas from tb_venda v join tb_venda_item vi on v.id_venda = vi.id_venda join tb_produto p on p.id_produto = vi.id_produto join tb_cliente c on c.id_cliente = v.id_cliente where v.dt_venda between '2021-04-02' and '2021-04-28' group by v.id_venda, v.dt_venda, c.nm_cliente having sum (p.vl_preco) > 1000; -- Desafio 19 select e.ds_cidade, count (vi.id_venda_item) qtd_vendas from tb_venda v join tb_venda_item vi on v.id_venda = vi.id_venda join tb_endereco e on v.id_endereco = e.id_endereco group by e.ds_cidade order by count (vi.id_venda_item); -- Desafio 20 select p.id_produto, p.nm_produto, c.nm_categoria, p.vl_preco, count (vi.id_venda_item) qtd_vendas from tb_venda v join tb_venda_item vi on v.id_venda = vi.id_venda join tb_produto p on p.id_produto = vi.id_produto join tb_categoria c on c.id_categoria = p.id_categoria group by p.id_produto, p.nm_produto, c.nm_categoria, p.vl_preco order by count (vi.id_venda_item) desc; ```
{"metaMigratedAt":"2023-06-16T02:48:46.397Z","metaMigratedFrom":"Content","title":"SESSION FOUR: Query or not to Query? QUERY!!!!","breaks":true,"contributors":"[{\"id\":\"80bf1c37-2722-44c2-96a3-490c9bac8b2e\",\"add\":12627,\"del\":5680}]"}
Expand menu