Funções integradas no sql
-
Upload
gelivaldo-filho -
Category
Documents
-
view
151 -
download
1
Transcript of Funções integradas no sql
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 FROMEMP;
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 CARACTERESINFORMANDO
ENTRE APÓSTROFOS=> SELECT EMPNO | | ‘ - ‘ | | ENAME EMPREGADO FROMEMP;
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 FROMtabela;
SELECT DISTINCT DEPTNO FROM EMP;
8)CLASSIFICAÇÃO LINHAS DA TABELA: SELECT coluna1,coluna2 FROM tabela ORDER BYcoluna;
SELECT ENAME,JOB,SAL FROM EMP ORDER BY JOB;
FUNÇÕES INTEGRADAS NO SQL: http://www.inf.furb.br/~dalfovo/Bogo/material/complementar/querysql/...
1 de 6 11/11/2011 16:03
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 ANDVALOR2;
SELECT ENAME,SAL,DEPTNO FROM EMP
WHERE SAL BETWEEN 100 AND 2000;
11) SELECIONAR LINHAS COM OS VALORES ENTRE UMA LISTA DE VALORESINFORMADA:
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 PARAISSO 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 DADOSNUMÉRICOS:
FUNÇÕES INTEGRADAS NO SQL: http://www.inf.furb.br/~dalfovo/Bogo/material/complementar/querysql/...
2 de 6 11/11/2011 16:03
SELECT coluna1,coluna2 FROM tabela WHERE coluna LIKE ‘N%’;
SELECT ENAME FROM EMP WHERE ENAME LIKE ‘S%’; TODOS COMEÇAMCOM S.
SELECT ENAME FROM EMP WHERE ENAME LIKE ‘____’; TODOS COM 4LETRAS.
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 CADAPALAVRA PARA
MAIÚSCULA;
-LENGTH(NOME-COLUNA) RETORNA O NUMERO DE CARACTERES OUDÍGITOS DE
UMA COLUNA OU CADEIA DE CARACTERES.
B)FUNÇÕES PARA MANIPULAR NÚMEROS:
-ROUND(NOME_COLUNA,N) RETORNA O ARREDONDAMENTO DECOLUNAS,EXPRESSÕES,
OU VALORES , PARA N CASAS DECIMAIS;
-TRUNC(NOME-COLUNA,N) RETORNA O TRUNCAMENTO DECOLUNAS,EXPRESSÕES OU
VALORES EM N CASAS DECIMAIS;
-SQRT(NOME-COLUNA) RETORNA A RAIZ QUADRADA DE UMA COLUNA OUVALOR;
-SIGN(COLUNA1 - COLUNA2) SE A COLUNA,OU EXPRESSÃO,OU VALORFOREM:
VALOR NEGATIVO => RETORNA -1;
VALOR IGUAL A ZERO => RETORNA 0;
FUNÇÕES INTEGRADAS NO SQL: http://www.inf.furb.br/~dalfovo/Bogo/material/complementar/querysql/...
3 de 6 11/11/2011 16:03
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 PELOVALOR2.
C)FUNÇÕES PARA MANIPULAR DATAS:
-SYSDATE RETORNA A DATA E HORA CORRENTE;
-MONTHS_BETWEEN(DATA1,DATA2) RETORNA O NÚMERO DE MESES ENTREDUAS 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 ESUBTRAIR 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 DEFAULTPARA 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
FUNÇÕES INTEGRADAS NO SQL: http://www.inf.furb.br/~dalfovo/Bogo/material/complementar/querysql/...
4 de 6 11/11/2011 16:03
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 UMTIPO
DE DADO NUMBER;
-TO_DATE(DATA,FORMATO) PERMITE FORMATAR PARA OUTROS FORMATOSDE
DATAS;
-NVL(COLUNA,VALOR) CONVERTE UM VALOR NULO PARA UM NOVOVALOR;
FUNÇÕES INTEGRADAS NO SQL: http://www.inf.furb.br/~dalfovo/Bogo/material/complementar/querysql/...
5 de 6 11/11/2011 16:03
-GREATEST(COLUNA1,COLUNA2) RETORNA O MAIOR VALOR DE UMA LISTADE VLRS;
-LEAST(COLUNA1,COLUNA2) RETORNA O MENOR VALOR DE UMA LISTA DEVLRS.;
-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 CONJUNTODE LINHAS(ROWS) DA TABELA. RETORNAM UM RESULTADO BASEADO NUM GRUPO DELINHAS. POR
DEFAULT TODAS A LINHAS DA TABELA SÃO TRATADAS COM UM GRUPO. A CLÁUSULAGROUP 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 DACOLUNA OU EXP,
IGNORANDO VALORES NULOS;
-MAX(COLUNA OU EXPRESSÃO) RETORNA O VLR MÁXIMO DE UMA COLUNAOU EXP;
-MIN (COLUNA OU EXPRESSÃO) RETORNA O VLR MÍNIMO DE UMA COLUNAOU EXP;
-GROUP BY - A CLÁUSULA REFERENCIA UMA OU MAIS COLUNAS QUEDEVEM SER AGRUPADAS COM BASE NAS COLUNAS DECLARADAS NOSELECT
FUNÇÕES INTEGRADAS NO SQL: http://www.inf.furb.br/~dalfovo/Bogo/material/complementar/querysql/...
6 de 6 11/11/2011 16:03