0% acharam este documento útil (0 voto)
31 visualizações10 páginas

Funções SQL: Tipos e Exemplos Práticos

Enviado por

1921312022
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
31 visualizações10 páginas

Funções SQL: Tipos e Exemplos Práticos

Enviado por

1921312022
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

FUNÇÕES EM SQL

— SINGLE –ROW – RETORNA UM RESULTADO POR


LINHA

— MULTIPLE-ROW – RETORNA UM RESULTADO POR


GRUPO DE LINHAS
FUNÇÕES SQL DE UM ÚNICA LINHA
— ARGUMENTOS PODEM SER COLUNAS DE TABELAS
OU EXPRESSÕES.
— PODEM SER USADAS NO SELECT , WHERE E ORDER
BY.
— DIVIDIDAS EM :
◦ CARACTER: ACEITAM UM ARGUMENTO EM CARACTER E
RETORNA UM CARACTER OU NUMERICO
◦ NUMÉRICAS: ACEITA NUMÉRICO E RETORNA NUMÉRICO
◦ DATA: OPERA EM TIPOS DATE.
◦ CONVERSÃO: CONVERTE DE UM TIPO PARA OUTRO
FUNÇÕES SQL DE CARACTERES:
— LOWER – CONVERTE CARACTERES PARA MINUSCULA – Turma SQL = turma sql
Select lower(nomereal) from atores;
Select nomereal from atores where lower(nomereal)=’sandra bullock’
Select nomereal from atores where lower(nomereal) like ’sandra%’

— UPPER – CONVERTE CARACTERES PARA MAIUSCULA


Select upper(nomereal) from atores;

— INITCAP - CONVERTE A PRIMEIRA LETRA DE CADA PALAVRA DO ARGUMENTO, O


RESTO FICA EM MINUSCULA
Select initcap(nomereal) from atores;

— CONCAT – CONCATENA OS DOIS ARGUMENTOS – IGUAL AO PIPE ||


Select concat(nome, ’ faleceu ontem ’) from atores
FUNÇÕES SQL DE CARACTERES:
— SUBSTR(STRING,POSICAO,TAMANHO)- RETORNA OS CARACTERES DA
STRING COMECANDO NA POSICAO E SENDO DO TAMANHO.
SE POSICAO FOR NEGATIVA A POSIÇÃO COMEÇA NO FIM DA STRING, E SE
TAMANHO É OMITIDO RETORNA TODOS OS CARACTERES A PARTIR DA POSIÇÃO.
Select substr(nome, 1, 5) from atores
where SUBSTR(‘nome’,-1,1)=’n’ TERMINA COM n.

— LENGTH – RETORNA O TAMANHO DA STRING


Select length(nome) as tamanho from atores;

— REPLACE(STRING, BUSCA, SUBSTITUI)- SUBSTITUI UMA STRING DE BUSCA


NA STRING FORNECIDA PELA DE SUBSTITUICAO
Select replace(nome, ’ç’, ’c’) from atores;
FUNÇÕES SQL NUMÉRICAS:
— ROUND(NUMERO,2)- ARREDONDA O VALOR PARA UM DECIMAL
INFORMADO .
SELECT ROUND(45.926,2) FROM DUAL; = 45.93
SELECT ROUND(45.926,0) FROM DUAL; = 46
SELECT ROUND(45.926,-1) FROM DUAL; = 50

— DUAL É UMA TABELA AUXILIAR COM UMA COLUNA E UMA LINHA QUE
PERMITE VER RESULTADOS DE FUNCOES.

— TRUNC(NUMERO,2)- TRUNCA O NUMERO PARA UM DECIMAL INORMADO.


SELECT TRUNC(45.926,2) FROM DUAL; = 45.92
SELECT TRUNC(45.926) FROM DUAL; = 45
SELECT TRUNC(45.926,-1) FROM DUAL; = 40

— MOD(160,30)- RETORNA O RESTO DA DIVISAO


RESTO É UTIL PARA SABER SE UM NUMERO E PAR OU IMPAR.
FUNÇÕES SQL DE DATA
— CAMPO DATE NO ORACLE ARMAZENA DIA,MÊS,ANO,HORA,MIN E
SEGUNDO.
— O PADRAO DE VISUALIZACAO DEPENDE DA LINGUAGEM DA INSTALAÇÃO
PARA PORTUGUES = DD/MM/YYYY
INGLÊS = DD-MON-YYYY
— FUNCAO SYSDATE-RETORNA DATA E HORA DO SISTEMA
SELECT SYSDATE FROM DUAL;
PODE SER USADA PARA CALCULO COM DATAS.
— ADICIONAR OU SUBTRAIR DIAS PARA DATAS RESULTA EM UMA DATA
SYSDATE + 1 FROM DUAL
— SUBTRAIR UMA DATA DE OUTRA RESULTA EM DIAS
SELECT SYSDATE – DATAFILME TEMPO_LANCAMENTO FROM FILMES;
— ADICIONAR HORAS PARA UMA DATA E HORA
SYSDATE +1/24 – ADICIONA 1 HORA.
FUNÇÕES SQL DE DATA
— MONTHS_BETWEEN = NUMERO DE MESES ENTRE DUAS DATAS
SELECT MONTHS_BETWEEN(SYSDATE,DATAFILME) FROM FILMES;
PODE SER NEGATIVO, A PARTE DECIMAL REPRESENTA FRAÇÃO DE MÊS.

EX. WHERE MONTHS_BETWEEN(SYSDATE,DATAFILME) <= 12 => LANCAMENTOS NO ULTIMO ANO

— ADD_MONTHS = ADICIONA MESES PARA UMA DATA


SELECT ADD_MONTHS(SYSDATE,2) FROM DUAL; PODE ADICIONAR NEGATIVO.

— LAST_DAY= ULTIMO DIA DE UM MÊS DA DATA INFORMADA


SELECT LAST_DAY(SYSDATE) FROM DUAL;

— ROUND= DATA ARREDONDADA


Suponha que sysdate = 11/06/2012 20:03:58
Select round(sysdate) from dual; == 12/06/2012 00:00:00

— TRUNC= DATA TRUNCADA


Select trunc(sysdate) from dual; == 11/06/2012 00:00:00
CONVERSÃO DE TIPOS
— IMPLICITA:
◦ VARCHAR/CHAR PARA NUMBER OU DATE => OCORREM APENAS SE O
CHAR REPRESENTA UM NUMERO VALIDO, SENÃO OCORRE ERRO.
◦ NUMBER/DATE PARA CHAR OU VARCHAR
— FUNÇÕES DE CONVERSÃO(EXPLÍCITA):
◦ TO_CHAR() => CONVERTE UM NUMBER OU DATE PARA UM VARCHAR2
– PARA DATA => TO_CHAR(SYSDATE,’DD/MM/YYYY’) == MASCARA E CASE SENSITIVE
– Ex. TO_CHAR(SYSDATE,’DD/MM/YYYY HH24:MI:SS’)
– PARA NUMBER => TO_CHAR(SALARY,’99G999D00’)== OU ’99G999D90’
◦ TO_NUMBER() => TO_NUMBER(’545.90’)
◦ TO_DATE()=> TO_DATE(‘01/01/2012’,’DD/MM/YYYY’)
– MELHOR USAR A MASCARA
FUNÇÕES SQL
— ANINHANDO FUNÇÕES

— SELECT NOMEREAL,
UPPER(SUBSTR(NOMEREAL,1,8)||’_br’) FROM
ATORES;
TRATAMENTO DE NULOS
— FUNCAO NVL => SUBSTITUI O NULL POR ALGO
◦ EX. NVL(SALARIO,0)
◦ NVL(DATA_CONTRATO,’01/01/2012’)
◦ NVL(NOME,’SEM NOME’)

— PODE SER USADO NO SELECT E WHERE

Você também pode gostar