MAP MIND BD1P- SAMPLE

DDL

CREATE

CREATE TABLE Pedidos (
ID INT,
ClienteID INT,
Produto VARCHAR(50),
Valor NUMERIC(10,2),
PRIMARY KEY (ID),
FOREIGN KEY (ClienteID) REFERENCES Clientes(ID)
);

ALTER

DROP

ALTER TABLE Clientes
DROP COLUMN Email;

DML

INSERT

INSERT INTO Pedidos (ID, ClienteID, Produto, Valor) VALUES
(1, 1, 'Celular', 1000.00),
(2, 1, 'TV', 2000.00),
(3, 2, 'Notebook', 3000.00),
(4, 3, 'Tablet', 500.00),
(5, 3, 'Impressora', 300.00),
(6, 4, 'Fone de Ouvido', 100.00),
(7, 5, 'Câmera', 1500.00),
(8, 6, 'Geladeira', 2500.00),
(9, 6, 'Máquina de Lavar', 2000.00),
(10, 7, 'Ventilador', 80.00),
(11, 8, 'Bicicleta', 600.00),
(12, 9, 'Livro', 30.00),
(13, 10, 'Tênis', 200.00),
(14, 11, 'Perfume', 150.00),
(15, 12, 'Óculos de Sol', 120.00),
(16, 13, 'Chuveiro', 80.00),
(17, 14, 'Mochila', 50.00),
(18, 15, 'Camiseta', 20.00),
(19, 15, 'Calça Jeans', 70.00),
(20, 16, 'Relógio', 180.00),
(21, 16, 'Bolsa', 100.00),
(22, 17, 'Colchão', 900.00),
(23, 18, 'Tapete', 80.00),
(24, 19, 'Toalha', 10.00),
(25, 20, 'Panela', 50.00),
(26, 21, 'Cadeira', 120.00),
(27, 22, 'Mesa', 250.00),
(28, 23, 'Cama', 800.00),
(29, 24, 'Armário', 500.00),
(30, 25, 'Sapato', 150.00);

DELETE

DELETE FROM clientes WHERE nome = 'Tatiane'

UPDTAE

UPDATE Clientes
SET Estado = 'RJ'
WHERE Cidade = 'Rio de Janeiro';

DQL

SELECT SIMPLES

SINTAXE

SELECT COM WHERE

SELECT *
FROM Clientes
WHERE Cidade = 'São Paulo';

SELECT COM ORDER BY

SELECT *
FROM Clientes
ORDER BY Nome ASC;

SELECT COM LIMIT

SELECT *
FROM Clientes
LIMIT 10;

SELECT * FROM Clientes

CREATE TABLE Clientes (
ID INT,
Nome VARCHAR(50),
Cidade VARCHAR(50),
Estado VARCHAR(50),
PRIMARY KEY (ID)
);

INSERT INTO Clientes (ID, Nome, Cidade, Estado) VALUES
(1, 'João', 'São Paulo', 'SP'),
(2, 'Maria', 'Rio de Janeiro', 'RJ'),
(3, 'Pedro', 'Belo Horizonte', 'MG'),
(4, 'Ana', 'Porto Alegre', 'RS'),
(5, 'Lucas', 'Curitiba', 'PR'),
(6, 'Carla', 'Salvador', 'BA'),
(7, 'Rafael', 'Recife', 'PE'),
(8, 'Juliana', 'Fortaleza', 'CE'),
(9, 'Mariana', 'Brasília', 'DF'),
(10, 'Gabriel', 'Florianópolis', 'SC'),
(11, 'Laura', 'Manaus', 'AM'),
(12, 'Fernando', 'Belém', 'PA'),
(13, 'Amanda', 'Vitória', 'ES'),
(14, 'Diego', 'Campinas', 'SP'),
(15, 'Isabela', 'São Paulo', 'SP'),
(16, 'Ricardo', 'São Paulo', 'SP'),
(17, 'Camila', 'Rio de Janeiro', 'RJ'),
(18, 'Alexandre', 'Belo Horizonte', 'MG'),
(19, 'Patrícia', 'Porto Alegre', 'RS'),
(20, 'Rodrigo', 'Curitiba', 'PR'),
(21, 'Luciana', 'Salvador', 'BA'),
(22, 'Paulo', 'Recife', 'PE'),
(23, 'Carolina', 'Fortaleza', 'CE'),
(24, 'Marcelo', 'Brasília', 'DF'),
(25, 'Tatiana', 'Florianópolis', 'SC');

SELECT COM AGRUPAMENTO

SELECT Estado, COUNT(*) AS TotalClientes
FROM Clientes
GROUP BY Estado;

SELECT COM JUNÇÕES

INNER

SELECT c.Nome, p.Produto
FROM Clientes c
INNER JOIN Pedidos p ON c.ID = p.ClienteID;

LEFT

FULL

RIGHT

SELECT c.Nome, p.Produto
FROM Clientes c
LEFT JOIN Pedidos p ON c.ID = p.ClienteID;

SELECT c.Nome, p.Produto
FROM Clientes c
FULL JOIN Pedidos p ON c.ID = p.ClienteID;

SELECT c.Nome, p.Produto
FROM Clientes c
RIGHT JOIN Pedidos p ON c.ID = p.ClienteID;

ALTER TABLE Clientes
ADD COLUMN Email VARCHAR(100);

SELECCT CCOM OPERAÇÕES DE CONJUNTO

UNION

SELECT ID
FROM Clientes
UNION
SELECT ClienteID
FROM Pedidos;

EXCEPT

SELECT Nome, Cidade
FROM Clientes
EXCEPT
SELECT Nome, Cidade
FROM Clientes
WHERE Estado = 'SP';

INTERSECT

SELECT ID FROM Clientes INTERSECT SELECT ClienteID FROM Pedidos;

Select com where, order by, group by e joins

SELECT c.Nome, pd.Produto, SUM(dp.Quantidade) AS TotalQuantidade
FROM Clientes c
JOIN Pedidos pd ON c.ID = pd.ClienteID
JOIN DetalhePedido dp ON pd.ID = dp.PedidoID
JOIN Produtos p ON dp.ProdutoID = p.ID
WHERE c.Estado = 'SP'
GROUP BY c.Nome, pd.Produto
ORDER BY TotalQuantidade DESC
LIMIT 5
OFFSET 0;

CREATE TABLE DetalhePedido (
ID INT,
PedidoID INT,
ProdutoID INT,
Quantidade INT,
PRIMARY KEY (ID),
FOREIGN KEY (PedidoID) REFERENCES Pedidos(ID),
FOREIGN KEY (ProdutoID) REFERENCES Produtos(ID));

CREATE TABLE Produtos ( ID INT,
NomeProduto VARCHAR(100),
Categoria VARCHAR(100),
PRIMARY KEY (ID) );

INSERT INTO Produtos (ID, NomeProduto, Categoria) VALUES
(1, 'Celular', 'Eletrônicos'),
(2, 'TV', 'Eletrônicos'),
(3, 'Notebook', 'Eletrônicos'),
(4, 'Tablet', 'Eletrônicos'),
(5, 'Impressora', 'Eletrônicos');

INSERT INTO DetalhePedido (ID, PedidoID, ProdutoID,Quantidade) VALUES
(1, 1, 1, 2),
(2, 1, 2, 1),
(3, 2, 3, 1),
(4, 3, 4, 3),
(5, 4, 5, 2);

RUAN RODY DE MELO DA COSTA