Buscar

scripts do SQL

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 13 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 13 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 13 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

/* Modelagem básica - curso 
ENTIDADE=TABELA 
CAMPOS=ATRIBUTOS */ 
 
CLIENTE 
 
NOME - CARACTER(30) 
CPF - NUMERO(11) 
EMAIL - CARACTER(30) 
TELEFONE - CARACTER(30) 
ENDERECO - CARACTER(100) 
SEXO - CARACTER(1) 
 
/* Processos de modelagem */ 
 
 
/* FASE 01 E 02 - AD ADM DE DADOS */ 
MODELAGEM CONCEITUAL - RASCUNHO 
MODELAM LÓGICA - QUALQUER PROGRAMA DE MODELAGEM 
 
/*FASE 03 - DBA / AD */ 
 
MODELAGEM FÍSICA - SCRIPT DE BANCO 
 
/* INICIANDO A MODELAGEM FÍSICA*/ 
 
/* CRIANDO BANCO DE DADOS */ 
 
/* CREATE DATABASE EXEMPLO */ 
 
CREATE DATABASE PROJETO; 
 
/* CONECTANDO-SE AO BANCO */ 
 
USE PROJETO; 
 
/* CRIANDO A TABELA DE CLIENTES */ 
 
CREATE TABLE CLIENTE( 
 NOME VARCHAR(30), 
 SEXO CHAR(1), 
 EMAIL VARCHAR(30), 
 CPF INT(11), 
 TELEFONE VARCHAR(30), 
 ENDERECO VARCHAR(100) 
 
); 
 
SELECT * FROM CLIENTE; 
 
 
/* VERIFICANDO AS TABELAS DO BANCO */ 
 
SHOW TABLES; 
 
USE EXEMPLO; 
 
 
/* DESCOBRINDO(EXIBINDO) COMO É A ESTRUTURA DE UMA TABELA */ 
 
DESC CLIENTE; 
 
 
/* SINTAXE BÁSICA DE INSERÇÃO */ 
INSERT INTO CIDADE 
 
/* SINTAXE BÁSICA DE INSERÇÃO - INSERT INTO TABELA... */ 
 
/* FORMA 01 - OMITINDOEX(CLUINDO)AS COLUNAS */ 
 
INSERT INTO CLIENTE VALUES('JOAO','M','JOAO@GMAIL.COM',988638273,'22923110','MAIA 
LACERDA - ESTACIO - RIO DE JANEIRO - RJ'); 
 
INSERT INTO CLIENTE 
VALUES('CELIA','F','CELIA@GMAIL.COM',541521456,'25078869','RIACHUELO - CENTRO - RIO DE 
JANEIRO - RJ'); 
 
INSERT INTO CLIENTE VALUES('JORGE','M',NULL,885755896,'58748895','OSCAR CURY - BOM 
RETIRO - PATOS DE MINAS - MG'); 
 
/* FORMA 02 - COLOCANDO AS COLUNAS */ 
 
INSERT INTO CLIENTE(NOME,SEXO,ENDERECO,TELEFONE,CPF) VALUES('LILIAN','F','SENADOR 
SOARES - TIJUCA - RIO DE JANEIRO - RJ','947785696',887774856); 
 
/* FORMA 03 - INSERT COMPACTO - SOMENTE MYSQL */ 
 
INSERT INTO CLIENTE VALUES('ANA','F','AMA@GLOBO.COM',85548962,'548556985','PRES 
ANTONIO CARLOS - CENTRO -SAO PAULO - SP'), 
 ('CARLA','F','CARLA@TERATI.COM.BR',7745828,'66587458','SAMUEL SILVA - 
CENTRO -BELO HORIZONTE - MG'); 
 
 
INSERT INTO CLIENTE(NOME,SEXO,ENDERECO,TELEFONE,CPF) VALUES('CLARA','F','SENADOR 
SOARES - TIJUCA - RIO DE JANEIRO - RJ','883665843',99999999999); 
 
/* FILTRANDO DADOS COM WHERE E LIKE - aula 30/03 */ 
 
 SELECT NOME, TELEFONE FROM CLIENTE; 
 
 /* FILTRANDO */ 
 
 SELECT NOME, SEXO FROM CLIENTE 
 WHERE SEXO = 'M'; 
 
 SELECT NOME, SEXO FROM CLIENTE 
 WHERE SEXO = 'F'; 
 
 SELECT NOME, ENDERECO FROM CLIENTE 
 WHERE ENDERECO = 'RJ'; 
 
 SELECT NOME, SEXO FROM CLIENTE 
 WHERE ENDERECO = 'RJ'; 
 
 /*UTILIZANDO O LIKE */ 
 
 SELECT NOME, SEXO FROM CLIENTE 
 WHERE ENDERECO = 'RJ'; 
 
 
 /*CARACTER CORINGA % -> QUALQUER COISA*/ 
 
 SELECT NOME, SEXO FROM CLIENTE 
 WHERE ENDERECO = '%RJ'; 
 
 SELECT NOME, SEXO, ENDERECO FROM CLIENTE 
 WHERE ENDERECO = '%RJ'; 
 
/*RESOLVENDO O EXERCÍCIO */ 
 
CREATE DATABASE LIVRARIA; 
 
CREATE TABLE LIVROS( 
 LIVRO VARCHAR(100), 
 AUTOR VARCHAR(100), 
 SEXO CHAR(1), 
 PAGINAS INT(5), 
 EDITORA VARCHAR(30), 
 VALOR FLOAT(10,2), 
 UF CHAR(2), 
 ANO INT(4) 
); 
 
 
INSERT INTO LIVROS VALUES('Cavaleiro Real', 'Ana Claudia', 'f', 465, 'Atlas', 49.9, 'RJ', 2009); 
INSERT INTO LIVROS VALUES('SQL para leigos', 'João Nunes', 'm', 459, 'Addison', 98.0, 'SP', 
2018); 
INSERT INTO LIVROS VALUES('Receitas Caseiras', 'Celia Tavares', 'f', 210, 'Atlas', 45.0, 'RJ', 
2008); 
INSERT INTO LIVROS VALUES('Pessoas Efetivas', 'Eduardo Santos', 'm', 390, 'Beta', 78.99, 'RJ', 
2018); 
INSERT INTO LIVROS VALUES('Habitos Saudáveis', 'Eduardo Santos', 'm', 630, 'Beta', 150.98, 
'RJ', 2019); 
INSERT INTO LIVROS VALUES('A casa Marrom', 'Hermes Macedo', 'm', 250, 'Bubba', 60.0, 'MG', 
2016); 
INSERT INTO LIVROS VALUES('Estacio Querido', 'Geraldo Francisco', 'm', 310, 'Insignia', 100.0, 
'ES', 2015); 
INSERT INTO LIVROS VALUES('Pra sempre amigas', 'Leda Silva', 'f', 510, 'Insignia', 78.98, 'ES', 
2011); 
INSERT INTO LIVROS VALUES('Copas Inesqueciveis', 'Marco Alcantara', 'm', 200, 'Larson', 
130.98, 'RJ', 2018); 
INSERT INTO LIVROS VALUES('O poder da mente', 'Clara Mafra', 'f', 120, 'Continental', 56.58, 
'SP', 2017); 
 
/*1 - TRAZER TODOS OS DADOS*/ 
SELECT * FROM LIVROS; 
 
 
/*2 - TRAZER O NOME DO LIVRO E O NOME DA EDITORA*/ 
SELECT LIVRO, EDITORA 
FROM LIVROS; 
 
/*3 - TRAZER O NOME DO LIVRO E A UF DOS LIVROS PUBLICADOS POR AUTORES DO SEXO 
MASCULINO */ 
SELECT LIVRO, UF 
FROM LIVROS 
WHERE SEXO = 'M'; 
 
SELECT AUTOR, SEXO, LIVRO, UF 
FROM LIVROS 
WHERE SEXO = 'M'; 
 
/*4 - TRAZER O NOME DO LIVRO E O NÚMERO DE PÁGINAS DOS LIVROS PUBLICADOS POR 
AUTORES DO SEXO FEMININO */ 
SELECT LIVRO, PAGINAS 
FROM LIVROS 
WHERE SEXO = 'F'; 
 
SELECT AUTOR, LIVRO, PAGINAS 
FROM LIVROS 
WHERE SEXO = 'F'; 
 
/*5 - TRAZER OS VALORES DOS LIVROS DAS EDITORAS DE SÃO PAULO */ 
SELECT LIVRO, VALOR 
FROM LIVROS 
WHERE UF = 'SP'; 
 
SELECT UF, LIVRO, VALOR 
FROM LIVROS 
WHERE UF = 'SP'; 
 
/*6 - TRAZER OS DADOS DOS AUTORES DO SEXO MASCULINO QUE TIVERAM LIVROS 
PUBLICADOS POR SÃO PAULO OU RIO DE JANEIRO (QUESTÃO DESAFIO)*/ 
SELECT AUTOR, SEXO, UF 
FROM LIVROS 
WHERE SEXO = 'M' 
AND UF ='SP' 
OR UF = 'RJ'; 
 
SELECT AUTOR, SEXO, UF 
FROM LIVROS 
WHERE SEXO = 'M' 
AND UF ='SP' 
AND UF = 'RJ'; 
 
/* OPERADORES LÓGICOS 
OR -> PARA QUE A SAIDA DA QUERY SEJA VERDADEIRA, BASTA QUE APENAS UMA CONDIÇÃO 
SEJA VERDADEIRA. 
AND -> PARA QUE A SAIDA SEJA VERDADEIRA TODAS AS CONDIÇÕES PRECISAM SER 
VERDADEIRAS. 
*/ 
 
/* OR - OU */ 
 
SELECT * FROM CLIENTE; 
 
SELECT NOME, SEXO, ENDERECO FROM CLIENTE 
WHERE 
SEXO = 'M' OR ENDERECO LIKE '%RJ'; 
 
SELECT NOME, SEXO, ENDERECO FROM CLIENTE 
WHERE 
SEXO = 'F' OR ENDERECO LIKE '%ESTACIO'; 
 
/* AND - E */ 
 
SELECT NOME, SEXO, ENDERECO FROM CLIENTE 
WHERE 
SEXO = 'M' AND ENDERECO LIKE '%RJ'; 
 
SELECT NOME, SEXO, ENDERECO FROM CLIENTE 
WHERE 
SEXO = 'F' AND ENDERECO LIKE '%ESTACIO'; 
 
/* COUNT(*), GROUP BY, PERFORMANCE COM OPERADORES LOGICOS */ 
 
/* CONTANDO OS REGISTROS DE UMA TABELA */ 
 
SELECT COUNT(*) FROM CLIENTE; 
 
/*MELHOR FORMA DE APRESENTAR*/ 
SELECT COUNT(*) AS "Quantidade de registros da tab. cliente" 
 FROM CLIENTE; 
 
SELECT COUNT(*) 
FROM CLIENTE; 
 
/* OPERADOR GROUP BY */ 
 
SELECT SEXO, COUNT(*) 
FROM CLIENTE 
GROUP BY SEXO; 
 
/* PERFORMANCE EM OPERADORES LOGICOS */ 
 
/* 1 MILHAO DE REGISTROS 
 
PARA CONTAR 
 SELECT COUNT(*) FROM CLIENTE; 
 
 SELECT SEXO, COUNT(*) FROM CLIENTE 
 GROUP BY SEXO; 
 
 SELECT CIDADE, COUNT(*) FROM CLIENTE 
 GROUP BY CIDADE; 
 
CONDICAO 
SEXO = F 
CIDADE = RIO DE JANEIRO 
 
SITUACAO - TRATANDO COM OU / OR 
70% MULHERES = SEXO = F 
30% MORA NO RIO DE JANEIRO 
 
 
 
 
 
SELECT NOME, SEXO, ENDERECO 
FROM CLIENTE 
WHERE SEXO = 'F' 
 
OR CIDADE = 'RIO DE JANEIRO'; 
 
SITUACAO - TRATANDO COM E / AND 
70% MULHERES = SEXO = F 
30% MORA NO RIO DE JANEIRO 
 
SELECT NOME, SEXO, ENDERECO 
FROM CLIENTE 
WHERE CIDADE = 'RIO DE JANEIRO' 
AND SEXO = 'F'; 
 
/*Explicações*/ 
 
/*CONSULTANDO A TABELA */ 
SELECT * FROM LIVROS; 
 
/* ACESSAR A DATABASE*/ 
 
/*VERIFICANDO OS BANCOS EXISTENTES*/ 
SHOW DATABASES; 
 
/*ACESSANDO O BANCO*/ 
USE PROJETO OU USE LIVRARIA; 
 
/*VERIFICANDO A TABELA */ 
SHOW TABLES; 
 
/*VER O BANCO QUE ESTÁ CONECTADO */ 
STATUS 
 
/* ALTERANDO OS CAMPOS NA TABELA UPDATE PRODUTOS SET NOME = 'ÁGUA MINERAL' 
WHERE CODIGO = 8 
 UPDATE PRODUTOS SET NOME = 'FILE DE FRANGO', PRECO = 8.7 WHERE CODIGO = 7 - 
ALTERANDO MAIS DE UM CAMPO 
 
 
 UPDATE PRODUTOS SET PRECO = PRECO + 1 WHERE CODIGO IN (6, 7, 8) - ALTERANDO TRÊS 
VALORES AUMENTANDO EM 1 REAL 
*/ 
 
/* EXERCÍCIO 14 e 15/04 
CREATE DATABASE DB_SENAI 
 
USE DB_SENAI 
 
CREATE TABLE CLIENTES 
 ( 
 CODIGO INT, 
 NOME VARCHAR(100) 
) 
 
ALTER TABLE CLIENTES ADDEMAIL VARCHAR(50) 
 
ALTER TABLE CLIENTES DROP EMAIL 
 
ALTER TABLE CLIENTES MODIFY NOME VARCHAR(200) 
 
DROP TABLE CLIENTES 
 
DROP DATABASE DB_SENAI 
 
CREATE DATABASE DB_SENAI 
 
CREATE TABLE PRODUTOS 
( 
 CODIGO INT, 
 NOME VARCHAR(100), 
 PRECO DECIMAL(10,2) 
) 
 
INSERT INTO PRODUTOS (CODIGO, NOME, PRECO) VALUES(1, 'CAFÉ', 3.9) 
 
SELECT * FROM PRODUTOS 
 
INSERT INTO PRODUTOS (CODIGO, NOME) VALUES(2, 'BATATA') 
 
SELECT * FROM PRODUTOS 
 
INSERT INTO PRODUTOS VALUES(3, 'ARROZ', 4.1) 
 
INSERT INTO PRODUTOS VALUES(4, 'AÇUCAR', 2.8) 
 
SELECT * FROM PRODUTOS 
 
INSERT INTO PRODUTOS VALUES(5, 'MACARRÃO', 1.7) 
INSERT INTO PRODUTOS VALUES(6, 'CARNE', 13.75) 
INSERT INTO PRODUTOS VALUES(7, 'FRANGO', 9.29) 
INSERT INTO PRODUTOS VALUES(8, 'ÁGUA', 5.6) 
INSERT INTO PRODUTOS VALUES(9, 'DETERGENTE', 1.29) 
INSERT INTO PRODUTOS VALUES(10, 'SABÃO EM PÓ', 2.7) 
INSERT INTO PRODUTOS VALUES(11, 'SAL', 0.95) 
INSERT INTO PRODUTOS VALUES(12, 'BALDE', 7.8) 
INSERT INTO PRODUTOS VALUES(13, 'REFRIGERANTE', 2.55) 
INSERT INTO PRODUTOS VALUES(14, 'SUCO 200ML', 1.0) 
INSERT INTO PRODUTOS VALUES(15, 'PÃO', 6.0) 
INSERT INTO PRODUTOS VALUES(16, 'BACON', 7.3) 
INSERT INTO PRODUTOS VALUES(17, 'CALABRESA', 8.75) 
INSERT INTO PRODUTOS VALUES(18, 'VASSOURA', 5.0) 
INSERT INTO PRODUTOS VALUES(19, 'LEITE EM PÓ', 2.99) 
INSERT INTO PRODUTOS VALUES(20, 'CERVEJA', 2.0) 
 
SELECT * FROM PRODUTOS 
 
UPDATE PRODUTOS SET NOME = 'ÁGUA MINERAL' WHERE CODIGO = 8 
 
SELECT * FROM PRODUTOS 
 
UPDATE PRODUTOS SET NOME = 'FILÉ DE FRANGO', PRECO = 8.7 WHERE CODIGO = 7 
 
SELECT * FROM PRODUTOS 
 
UPDATE PRODUTOS SET PRECO = PRECO + 1 WHERE CODIGO IN (6, 7, 8) 
 
SELECT * FROM PRODUTOS 
 
USE DB_SENAI 
 
DELETE FROM PRODUTOS WHERE CODIGO = 5 
 
SELECT * FROM PRODUTOS 
 
DELETE FROM PRODUTOS WHERE CODIGO IN (6, 7, 8) 
 
DELETE FROM PRODUTOS WHERE PRECO <= 5.1 
 
DELETE FROM PRODUTOS WHERE PRECO IS NULL 
 
SELECT * FROM PRODUTOS 
 
SELECT NOME, PRECO FROM PRODUTOS 
 
SELECT NOME, PRECO FROM PRODUTOS WHERE CODIGO = 15 
 
SELECT NOME, PRECO FROM PRODUTOS WHERE CODIGO IN (15, 17) 
 
SELECT NOME, PRECO FROM PRODUTOS WHERE CODIGO NOT IN (15, 17, 99) 
 
SELECT CODIGO, NOME PRECO FROM PRODUTOS WHERE PRECO BETWEEN 3.7 AND 6.7 
 
SELECT CODIGO, NOME, PRECO FROM PRODUTOS WHERE NOME LIKE 'PÃO' 
 
SELECT CODIGO, NOME, PRECO FROM PRODUTOS WHERE NOME LIKE 'BA%' 
 
SELECT CODIGO, NOME, PRECO FROM PRODUTOS WHERE NOME LIKE '%E' 
 
SELECT CODIGO, NOME, PRECO FROM PRODUTOS WHERE NOME LIKE '%A%' 
 
SELECT CODIGO, NOME, PRECO FROM PRODUTOS WHERE NOME LIKE '%AL%'

Outros materiais