Sei sulla pagina 1di 54

IMPLEMENTAO DE BANCO DE DADOS

Aula 4- Sql Parte 2



LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
Contedo Programtico desta aula
Conhecer o comando Select
Executar um script no Oracle.
Recuperar dados de uma tabela.

LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
Rodando Script
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
Rodando Script
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
Rodando Script
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
Rodando Script
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
Rodando Script
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
Modelo de Dados
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
Criando modelo
CREATE TABLE DEPARTAMENTO
( ID NUMBER(7) PRIMARY KEY,
NOME VARCHAR2(40) NOT NULL)

INSERT INTO DEPARTAMENTO VALUES ( 10, 'Financeiro');
INSERT INTO DEPARTAMENTO VALUES ( 20, 'Vendas');
INSERT INTO DEPARTAMENTO VALUES ( 30,
'Administrativo');
COMMIT;


LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
Criando modelo
CREATE TABLE EMPREGADO
( ID NUMBER(7) PRIMARY KEY,
ULT_NOME VARCHAR2(20) NOT NULL,
PRIM_NOME VARCHAR2(20) NOT NULL,
CARGO VARCHAR2(30),
SALARIO NUMBER(7,2),
DT_ADMISSAO DATE,
CPF CHAR(11) UNIQUE,
ID_DEPTO NUMBER(7) REFERENCES
DEPARTAMENTO(ID),
ID_GERENTE NUMBER(7) REFERENCES
EMPREGADO(ID));
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
Criando modelo
INSERT INTO EMPREGADO VALUES( 1, 'Velasquez',
'Carmen','Presidente',25000, '08/04/2008','12345678901',30,null);
INSERT INTO EMPREGADO VALUES( 2, 'Neves', 'Lauro', 'Diretor
de Vendas',19500, '07/03/2009','23456789012',20, 1);
INSERT INTO EMPREGADO VALUES( 3, 'Nogueira', 'Mrio','Diretor
Financeiro', 18000, '07/04/2010','34567890123',10,1);
INSERT INTO EMPREGADO VALUES( 4, 'Queiroz', 'Mark','Gerente
de Vendas',8000, '07/11/2010','12345432123',20,2);
INSERT INTO EMPREGADO VALUES( 5, 'Rodrigues', 'Alberto',
'Vendedor',4000, '10/1/2008', '87965432123', 20, 4);
INSERT INTO EMPREGADO VALUES( 6, 'Ugarte', 'Marlene',
'Vendedor', 3500,'23/11/2009', '87654345678',20,4);
COMMIT;
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
Criando modelo
CREATE TABLE CLIENTE
( ID NUMBER(7) PRIMARY KEY,
NOME VARCHAR2(40) NOT NULL,
VENDEDOR NUMBER(7) REFERENCES EMPREGADO(ID));


INSERT INTO CLIENTE VALUES ( 110, 'Ponto Quente',5);
INSERT INTO CLIENTE VALUES ( 120, 'Casa Supimpa',6);
INSERT INTO CLIENTE VALUES ( 130, 'Coisas e Tralhas',5);
INSERT INTO CLIENTE VALUES ( 140, 'Casa Desconto',null);
COMMIT;
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
CONSULTANDO TABELAS
Comando Select
o comando SQL para recuperao dos dados de uma
ou mais tabelas. Pode referenciar todas ou parte das
colunas de uma ou mais tabelas, alm de poder
restringir as linhas que sero recuperadas.
Como orientado a conjuntos, um nico comando pode
retornar nenhuma ou vrias linhas de uma combinao
de tabelas desde que satisfaam restries impostas.

LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
CONSULTANDO TABELAS
Os componentes bsicos do comando so:
A Clusula SELECT
Lista as colunas que sero recuperadas
Se utilizarmos o artifcio do * (asterisco) na clusula SELECT,
estaremos definindo que todas as colunas sero recuperadas.
A Clusula FROM
Define a tabela que ser recuperada

SELECT nome-col1, nome_col2, nome coln
FROM nome_da_ tabela;
OU
SELECT *
FROM nome_da_tabela ;

LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
CONSULTANDO TABELAS
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
CONSULTANDO TABELAS
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
ESCREVENDO EXPRESSES
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
ESCREVENDO EXPRESSES
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
ALIAS
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
UTILIZANDO WHERE
Gerando Restries nas consultas
Ao selecionar os dados para visualizao ou outra
necessidade podemos, alm de orden-los, restringir o meu
espectro de visualizao utilizando a clusula WHERE.
A clusula Where estabelece uma condio que a linha
dever obdecer para que faa parte do conjunto resposta da
consulta. No caso apenas retornam as linhas cujo deste da
condio de como resposta verdadeiro.
Veja o exemplo abaixo onde desejamos que retornem apenas
a linhas dos empregados com ID > 3:
SELECT *
FROM EMPREGADO
WHERE ID > 3

LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
UTILIZANDO WHERE
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
UTILIZANDO WHERE CASE SENSITIVE
SELECT * FROM EMPREGADO
SELECIONAR O EMPREGADO DE NOME Ugarte
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
UTILIZANDO WHERE CASE SENSITIVE
SELECT prim_nome,cargo
FROM c_empr
WHERE ult_nome = ' UGARTE'
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
UTILIZANDO WHERE CASE SENSITIVE
SELECT prim_nome,cargo
FROM c_empr
WHERE ult_nome = ' Ugarte'
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
UTILIZANDO WHERE DATAS
SELECT * FROM EMPREGADO
SELECIONAR O EMPREGADO CONTRATADO EM 07/04/10
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
UTILIZANDO WHERE DATA
SELECT ULT_NOME, DT_ADMISSAO
FROM EMPREGADO
WHERE DT_ADMISSAO = '7/4/2010';
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
UTILIZANDO WHERE DATA
SELECT ULT_NOME, DT_ADMISSAO
FROM EMPREGADO
WHERE DT_ADMISSAO = '7/ABR/2010'
ou
SELECT ULT_NOME, DT_ADMISSAO
FROM EMPREGADO
WHERE DT_ADMISSAO = '7/ABRIL/2010'
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES LOGICOS
SELECT * FROM EMPREGADO
SELECIONAR OS EMPREGADOS CONTRATADOS DEPOIS DE 2008 E QUE
GANHEM MAIS DE 10000
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES LOGICOS
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES LOGICOS
SELECT * FROM EMPREGADO
SELECIONAR OS EMPREGADOS CONTRATADOS DEPOIS DE 2008 OU QUE
GANHEM MAIS DE 10000
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES LOGICOS
DATA MAIOR QUE 1/1/2009
SELECT * FROM EMPREGADO
WHERE DT_ADMISSAO > 1/1/2009 OR SALARIO > 10000
USO OR LIGANDO DUAS CONDIES
SALARIO MAIOR QUE 10000
BASTA UMA SER VERDADEIRA
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS - IN
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS - IN
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS NOT IN
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS BETWEEN
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS BETWEEN
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS NOT BETWEEN
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS BETWEEN
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS BETWEEN
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS LIKE
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS LIKE
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS LIKE
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS LIKE
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS LIKE
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS LIKE
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS LIKE
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS LIKE
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS LIKE
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS LIKE
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS NOT LIKE
SELECT *
FROM EMPREGADO
WHERE DT_ADMISSAO NOT LIKE ' %/04/%'
NO FORAM CONTRATADOS NO MS 4
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS IS NULL
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS IS NULL
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
OPERADORES RELACIONAIS IS NOT NULL
LINGUAGEM SQL

IMPLEMENTAO DE BANCO DE DADOS
Prxima Aula
Aprender funes de grupo
Recuperar dados agregados de uma
tabela

Potrebbero piacerti anche