OPERAÇÕES DE RECUPERAÇÕES DE INFORMAÇÕES(QUERY)

SINTAXE : SELECT coluna1,coluna2,...,colunaN

FROM nome_tabela ;

1)SELECIONAR TODAS AS COLUNA DA TABELA:
 

SELECT * FROM EMP;
 
OU SELECT EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,COMM,DEPTNO FROM EMP;

2)EXPRESSÕES ARITMÉTICAS: ADIÇÃO(+),SUBTRAÇÃO(-),MULTIPLICAÇÃO(*),DIVISÃO(/)

OBEDECENDO A PRIORIDADE(*,/,+,-)
 

SELECT EMPNO,ENAME,SAL,SAL * 12,(SAL * 10 / 100) FROM EMP;

3) APELIDOS DAS COLUNAS:
 

SELECT ename NOME,sal SALARIO FROM emp; APÓS O NOME DA COLUNA, INFORMAR O APELIDO.

4)OPERADOR DE CONCATENAÇÃO- PERMITE LIGAR UMA COLUNA À OUTRA
 

SELECT EMPNO | | ENAME EMPREGADO FROM EMP;

5)INSERÇÃO DE CADEIA DE CARACTERES- PODE-SE INSERIR CARACTERES INFORMANDO
 

ENTRE APÓSTROFOS=> SELECT EMPNO | | ‘ - ‘ | | ENAME EMPREGADO FROM EMP;

6)CONVERTER VALORES NULOS: SELECT ENAME,SAL,NVL(COMM,0) FROM EMP;
 

SELECT NVL(COLUNA,VALOR)...

7)ELIMINAR VALORES DUPLICADOS NAS LINHAS: SELECT DISTINCT coluna FROM tabela;
 

SELECT DISTINCT DEPTNO FROM EMP;

8)CLASSIFICAÇÃO LINHAS DA TABELA: SELECT coluna1,coluna2 FROM tabela ORDER BY coluna;
 

SELECT ENAME,JOB,SAL FROM EMP ORDER BY JOB;

9)CONDIÇÕES PARA SELECIONAR LINHAS DA TABELA:
 

SELECT coluna1,coluna2,colunaN FROM tabela WHERE condição;

OPERADORES LÓGICOS OPERADORES BOOLEANOS
 

IGUAL (=) AND

MAIOR (>) OR

MAIOR OU IGUAL (>=) NOT

MENOR (<)

MENOR OU IGUAL (<=)

DIFERENTE (!=)

SELECT ENAME,SAL,DEPTNO FROM EMP

WHERE DEPTNO = 20

OR SAL > 1500;
 

10)SELECIONAR LINHAS COM OS VALORES ENTRE AS FAIXAS INFORMADAS:

SELECT coluna1,coluna2 FROM tabela WHERE coluna BETWEEN VALOR1 AND VALOR2;

SELECT ENAME,SAL,DEPTNO FROM EMP

WHERE SAL BETWEEN 100 AND 2000;

11) SELECIONAR LINHAS COM OS VALORES ENTRE UMA LISTA DE VALORES INFORMADA:
 

SELECT coluna1,coluna2 FROM tabela

WHERE coluna IN ( VALOR1,VALOR2,VALOR3);

SELECT EMPNO,SAL,MGR FROM EMP

WHERE MGR IN (7902,7566,7788);

12)SELECIONAR LINHAS SEM SABER O CONTEÚDO DA COLUNA,UTILIZANDO PARA ISSO OS

SÍMBOLOS (%) E (_). O _ (SUBLINHADO) É USADO PARA REPRESENTAR UM ÚNICO

CARACTER. O PORCENTAGEM (%) É USADO PARA REPRESENTAR UMA CADEIA DE CA-

RACTERES DE QUALQUER TAMANHO(INCLUSIVE ZERO). O LIKE SÓ PODE SER USADO

COM CADEIA DE CARACTERES OU DADOS GRÁFICOS, E NÃO COM DADOS NUMÉRICOS:
 

SELECT coluna1,coluna2 FROM tabela WHERE coluna LIKE ‘N%’;

SELECT ENAME FROM EMP WHERE ENAME LIKE ‘S%’; TODOS COMEÇAM COM S.

SELECT ENAME FROM EMP WHERE ENAME LIKE ‘____’; TODOS COM 4 LETRAS.

13) SELECIONAR UMA LISTA DE TODAS AS TABELAS NO BANCO DE DADOS:
 

SELECT table_name FROM all_tables;

 
FUNÇÕES INTEGRADAS NO SQL:

A) FUNÇÕES PARA MANIPULAR CARACTERES:
 

-LOWER(NOME-COLUNA) CONVERTE EM LETRAS MINÚSCULAS;

-UPPER(NOME-COLUNA) CONVERTE EM LETRAS MAIÚSCULAS;

-INITCAP(NOME-COLUNA) CONVERTE A PRIMEIRA LETRA DE CADA PALAVRA PARA

MAIÚSCULA;

-LENGTH(NOME-COLUNA) RETORNA O NUMERO DE CARACTERES OU DÍGITOS DE

UMA COLUNA OU CADEIA DE CARACTERES.

 

B)FUNÇÕES PARA MANIPULAR NÚMEROS:
 

-ROUND(NOME_COLUNA,N) RETORNA O ARREDONDAMENTO DE COLUNAS,EXPRESSÕES,

OU VALORES , PARA N CASAS DECIMAIS;

-TRUNC(NOME-COLUNA,N) RETORNA O TRUNCAMENTO DE COLUNAS,EXPRESSÕES OU

VALORES EM N CASAS DECIMAIS;

-SQRT(NOME-COLUNA) RETORNA A RAIZ QUADRADA DE UMA COLUNA OU VALOR;

-SIGN(COLUNA1 - COLUNA2) SE A COLUNA,OU EXPRESSÃO,OU VALOR FOREM:

VALOR NEGATIVO => RETORNA -1;

VALOR IGUAL A ZERO => RETORNA 0;

VALOR POSITIVO => RETORNA +1;

-ABS(COLUNA) RETORNA O VALOR ABSOLUTO DE UMA COLUNA OU VALOR;

-MOD(VALOR1,VALOR2) RETORNA O RESTO DA DIVISÃO DO VALOR1 PELO VALOR2.

 

C)FUNÇÕES PARA MANIPULAR DATAS:
 

-SYSDATE RETORNA A DATA E HORA CORRENTE;

-MONTHS_BETWEEN(DATA1,DATA2) RETORNA O NÚMERO DE MESES ENTRE DUAS DATAS;

-ADD_MONTHS(DATA,N) ADICIONA N NÚMERO DE MESES NA DATA,ONDE N

DEVE SER UM INTEIRO E PODE SER NEGATIVO;

-NEXT_DAY(DATA,N) RETORNA A DATA DO PRÓXIMO DIA DA SEMANA

INFORMADO,ONDE N PODE SER UM NRO. OU LITERAL;

-LAST_DAY(DATA) RETORNA A DATA DO ÚLTIMO DIA DO MÊS.
 

OPERAÇÕES ARITMÉTICAS COM DATAS: É POSSÍVEL ADICIONAR E SUBTRAIR NÚMEROS

DATA + NÚMERO DE DIAS / DATA - NÚMERO DE DIAS / DATA - DATA /

DATA - NÚMERO/24

D)FUNÇÕES DE CONVERSÃO:
 

-TO_CHAR(DATA,FORMATO) CONVERTE UM FORMATO DE DATA DEFAULT PARA UM FORMATO ALTERNATIVO ESPECIFICADO;

FORMATOS DE DATAS (DATE PICTURES) SIGNIFICADO

------------------------------------------------------------ -----------------------------------------------

YYYY ANO

Y,YYY ANO COM VÍRGULA

MM MÊS

MONTH NOME DO MÊS

MON NOME DO MÊS ABREVIADO

WW OU W MÊS DO ANO OU MÊS

DDD OU DD OU D DIA DO ANO,MÊS OU SEMANA

DAY NOME DO DIA DA SEMANA

HH OU HH12 HORA DO DIA (1-12)

HH24 HORA DO DIA (0 -23)

MI MINUTO

SS SEGUNDOS
 

SUFIXO SIGNIFICADO

-------------- -------------------------

TH NÚMERO

DDTH 14TH
 

TAMBÉM É UTILIZADO PARA CONVERTER TIPO DE DADO -NUMERICO => CHAR

TO_CHAR(NUMBER,’NUMBER PICTURE’ )

NUMBER PICTURE SIGNIFICADO EXEMPLO

------------------------- ----------------------- ------------------------------------

9 NUMÉRICO 999999 1234

(O NUMERO DE 9’S DETERMINA O TAMANHO)

0 MOSTRA ZERO A ESQ. 099999 001234

$ SINAL DE DOLAR $999999 $1234

. ESPECIFICA A POSIÇÃO DO 999999.99 1234.00

PONTO DECIMAL

, ESPECIFICA A POSIÇÃO DA 999,999 1,234

VÍRGULA
 

-TO_NUMBER( ‘VALOR’ ) CONVERTE O NÚMERO ARMAZENADO PARA UM TIPO

DE DADO NUMBER;

-TO_DATE(DATA,FORMATO) PERMITE FORMATAR PARA OUTROS FORMATOS DE

DATAS;

-NVL(COLUNA,VALOR) CONVERTE UM VALOR NULO PARA UM NOVO VALOR;

-GREATEST(COLUNA1,COLUNA2) RETORNA O MAIOR VALOR DE UMA LISTA DE VLRS;

-LEAST(COLUNA1,COLUNA2) RETORNA O MENOR VALOR DE UMA LISTA DE VLRS.;

-VSIZE(COLUNA) RETORNA O NRO. BYTES QUE SÃO UTILIZADOS PARA

ARMAZENAR INTERNAMENTE OS DADOS;

E)FUNÇÕES PARA MANIPULAR GRUPOS: SERVEM PARA MANIPULAR UM CONJUNTO DE LINHAS(ROWS) DA TABELA. RETORNAM UM RESULTADO BASEADO NUM GRUPO DE LINHAS. POR

DEFAULT TODAS A LINHAS DA TABELA SÃO TRATADAS COM UM GRUPO. A CLÁUSULA GROUP BY

É USADA PARA DIVIDIR AS LINHAS DA TABELA EM GRUPOS MENORES.
 

-AVG(COLUNA) RETORNA A MÉDIA DOS VALORES DA COLUNA

IGNORANDO VALORES NULOS;

-COUNT(*) RETORNA O NRO DE OCORRÊNCIAS DA EXPRESSÃO

OU COLUNA INCLUINDO DUPLICADAS E/OU NULAS;

-SUM(COLUNA OU EXPRESSÃO) RETORNA A SOMA DOS VALORES DA COLUNA OU EXP,

IGNORANDO VALORES NULOS;

-MAX(COLUNA OU EXPRESSÃO) RETORNA O VLR MÁXIMO DE UMA COLUNA OU EXP;

-MIN (COLUNA OU EXPRESSÃO) RETORNA O VLR MÍNIMO DE UMA COLUNA OU EXP;

-GROUP BY - A CLÁUSULA REFERENCIA UMA OU MAIS COLUNAS QUE DEVEM SER AGRUPADAS COM BASE NAS COLUNAS DECLARADAS NO SELECT