Skip to content

Instantly share code, notes, and snippets.

@cfigueiroa
Last active February 11, 2023 22:23
Show Gist options
  • Save cfigueiroa/e4347bc0b0c3b62d3daad2edbce3e1f7 to your computer and use it in GitHub Desktop.
Save cfigueiroa/e4347bc0b0c3b62d3daad2edbce3e1f7 to your computer and use it in GitHub Desktop.
SELECT * FROM produtos LIMIT 5;
SELECT * FROM clientes LIMIT 3;
SELECT * FROM produtos WHERE nome = 'Televisão 43"';
INSERT INTO produtos (nome, preco) VALUES ('Macbook Pro 13"', 1700000);
DELETE from clientes WHERE nome = 'Orlando Pequeno Jesus';
UPDATE produtos SET preco = 8000 WHERE nome = 'Pelúcia Strange Planet com Gatinho';
UPDATE produtos SET preco = 980000 WHERE nome = 'Violão Lava ME 2';
UPDATE clientes SET cpf = '04652651298' WHERE nome = 'Lucca Santarém Branco';
-- 9
-- -- 1
INSERT INTO compras (id_cliente, id_produto) VALUES ((SELECT id from clientes WHERE nome = 'Chico Buarque de Holanda'), (SELECT id from produtos WHERE nome = 'Violão Lava ME 2'));
-- -- 2
INSERT INTO compras (id_cliente, id_produto) SELECT clientes.id, produtos.id FROM clientes, produtos WHERE clientes.nome = 'Chico Buarque de Holanda' AND produtos.nome = 'Violão Lava ME 2';
-- 10
-- -- 1
INSERT INTO compras (id_cliente, id_produto) SELECT clientes.id, produtos.id FROM clientes, produtos WHERE clientes.nome = 'Olga Cascais Fortunato' AND produtos.nome = 'Celular Topo de Linha';
INSERT INTO compras (id_cliente, id_produto) SELECT clientes.id, produtos.id FROM clientes, produtos WHERE clientes.nome = 'Olga Cascais Fortunato' AND produtos.nome = 'Celular Topo de Linha';
-- -- 2
INSERT INTO compras (id_cliente, id_produto)
SELECT clientes.id, produtos.id
FROM clientes, produtos
WHERE clientes.nome = 'Olga Cascais Fortunato' AND produtos.nome = 'Celular Topo de Linha'
UNION ALL
SELECT clientes.id, produtos.id
FROM clientes, produtos
WHERE clientes.nome = 'Olga Cascais Fortunato' AND produtos.nome = 'Celular Topo de Linha';
-- -- 3
INSERT INTO compras (id_cliente, id_produto)
VALUES ((SELECT id FROM clientes WHERE nome = 'Olga Cascais Fortunato'), (SELECT id FROM produtos WHERE nome = 'Celular Topo de Linha')),
((SELECT id FROM clientes WHERE nome = 'Olga Cascais Fortunato'), (SELECT id FROM produtos WHERE nome = 'Celular Topo de Linha'));
-- 11
-- -- 1
DELETE FROM compras WHERE id_cliente = (SELECT id FROM clientes WHERE nome='Martinha Lima Zambujal') AND id_produto = (SELECT id FROM produtos WHERE nome='Fone Topo de Linha');
-- -- 2
DELETE FROM compras
WHERE id = (
SELECT c.id
FROM compras c
JOIN clientes cl ON c.id_cliente = cl.id
JOIN produtos p ON c.id_produto = p.id
WHERE cl.nome = 'Martinha Lima Zambujal'
AND p.nome = 'Fone Topo de Linha'
ORDER BY c.id DESC
LIMIT 1
);
-- 12
SELECT * FROM produtos ORDER BY preco ASC;
-- 13
SELECT * FROM produtos ORDER BY preco ASC LIMIT 3;
-- 14
SELECT * FROM produtos ORDER BY preco DESC LIMIT 1;
-- 15
SELECT * FROM produtos ORDER BY preco ASC OFFSET 1 LIMIT 1;
-- Challenges
-- 1
SELECT * FROM produtos WHERE nome LIKE '%Televisão%';
-- 2
SELECT * FROM produtos WHERE preco < 100000;
-- 3
SELECT * FROM produtos WHERE nome LIKE '%Celular%' AND preco < 200000;
-- 4
SELECT * FROM clientes WHERE id NOT IN (SELECT id_cliente FROM compras);
-- 5
SELECT * FROM produtos
WHERE id IN (
SELECT id_produto
FROM compras
WHERE id_cliente = (
SELECT id
FROM clientes
WHERE nome = 'Benício Freire Sampaio'
)
);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment