simone dominico - aula 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes...

78
SIMONE DOMINICO - AULA 3 SQL - FUNÇÕES DE UMA ÚNICA LINHA

Upload: others

Post on 24-Sep-2020

12 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

SIMONE DOMINICO - AULA 3

SQL - FUNÇÕES DE UMA ÚNICA LINHA

Page 2: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES SQL

▸ São um recurso avançado do SQL e podem ser utilizadas para:

▸ Executar cálculos usando dados.

▸ Modificar itens de dados individuais.

▸ Manipular saída para grupos de linhas.

▸ Formatar datas e números para exibição.

▸ Converter tipos de dados de coluna.

Page 3: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

TIPOS DE FUNÇÕES

▸ Funções de Datas;

▸ Funções numéricas;

▸ Funções de Caracter;

▸ Funções de Conversão;

Page 4: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE DATAS - AGE()

▸ Calcula idades.

▸ age(timestamp, timestamp)

Page 5: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE DATAS - AGE()

▸ Calcula idades.

▸ age(timestamp, timestamp)

Page 6: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE DATAS - AGE()

Page 7: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE DATAS - AGE()

Page 8: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE DATAS - AGE()

▸ Calcula idades.

▸ age(timestamp)

Page 9: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE DATAS - AGE()

▸ Calcula idades.

▸ age(timestamp)

Page 10: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE DATAS - CURRENT_DATE

▸ DATA ATUAL

Page 11: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE DATAS - CURRENT_DATE

▸ DATA ATUAL

Page 12: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE DATAS - CURRENT_TIME

▸ HORA ATUAL

Page 13: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE DATAS - CURRENT_TIMESTAMP()

▸ HORA e DATA ATUAL - precisão

Page 14: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE DATAS-EXTRACT

▸ Extrai informações de uma data

Page 15: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE DATAS-DATE_PART

▸ Extrai informações de um campo data

Page 16: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE DATAS-DATE_PART

Page 17: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE DATAS-DATE_TRUNC

Page 18: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE DATAS-DATE_TRUNC

Page 19: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE DATAS-TO_DATE

▸ Converte string para o formato data.

Page 20: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES NUMÉRICAS - SQL

Page 21: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES NUMÉRICAS - ABS

▸ Calcula o valor absoluto de um número.

Page 22: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES NUMÉRICAS - CBRT

▸ Calcula a raiz cúbica

Page 23: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES NUMÉRICAS - CBRT

▸ Calcula a raiz cúbica

Page 24: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES NUMÉRICAS - CEIL

▸ O menor inteiro não menor que o argumento

Page 25: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES NUMÉRICAS - CEIL

▸ O menor inteiro não menor que o argumento

Page 26: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES NUMÉRICAS - MOD

▸ resto de y/x

Page 27: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES NUMÉRICAS - MOD

▸ resto de y/x

Page 28: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES NUMÉRICAS - FLOOR

▸ O maior inteiro não maior que o argumento

Page 29: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES NUMÉRICAS - FLOOR

▸ O maior inteiro não maior que o argumento

Page 30: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES NUMÉRICAS - ROUND

▸ Arredonda um valor numérico para o número inteiro mais próximo ou um número com o número de casas decimais.

Page 31: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES NUMÉRICAS - ROUND

Page 32: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES NUMÉRICAS - TRUNC

▸ Retorna um número truncado para um número inteiro ou truncado para as casas decimais especificadas.

Page 33: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES NUMÉRICAS - TRUNC

Page 34: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES NUMÉRICAS - SQRT

▸ Raiz quadrada.

Page 35: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES NUMÉRICAS - SQRT

▸ Raiz quadrada.

Page 36: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CARACTERES - SQL

Page 37: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CARACTER - CONCAT

▸ Concatena duas ou mais strings.

Page 38: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CARACTER - CONCAT

▸ Concatena duas ou mais strings.

Page 39: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CARACTER - CONCAT

▸ Concatena duas ou mais strings.

Page 40: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CARACTER - CONCAT

▸ Concatena duas ou mais strings.

Page 41: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CARACTER - FORMAT

▸ Formata argumentos baseados em uma string de formato.

Page 42: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CARACTER - FORMAT

Page 43: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CARACTER - LEFT

▸ Retorna os N primeiros caracteres.

Page 44: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CARACTER - LEFT

▸ Retorna os N primeiros caracteres.

Page 45: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CARACTER - LENGTH

▸ Retorna o número de caracteres ou bytes de uma string.

Page 46: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CARACTER - LENGTH

▸ Retorna o número de caracteres ou bytes de uma string.

Page 47: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CARACTER - POSITION

▸ Retorna a posição de uma substring em uma string.

Page 48: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CARACTER - POSITION

Page 49: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CARACTER - RIGHT

▸ Retorna os n caracteres finais.

Page 50: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CARACTER - RIGHT

▸ Retorna os n caracteres finais.

Page 51: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CARACTER - REPLACE

▸ Substitui todas as ocorrências de string.

Page 52: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CARACTER - REPLACE

Page 53: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CARACTER - SUBSTRING

▸ Extrai uma substring de uma string.

Page 54: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CARACTER - SUBSTRING

▸ Extrai uma substring de uma string.

Page 55: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CONVERSÃO - SQL

Page 56: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CONVERSÃO

CONVERSÃO DE DADOS

CONVERSÃO IMPLÍCITA DE

DADOS

Page 57: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CONVERSÃO

CONVERSÃO DE DADOS

CONVERSÃO IMPLÍCITA DE

DADOS

CONVERSÃO EXPLÍCITA DE

DADOS

Page 58: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CONVERSÃO

CONVERSÃO DE DADOS

CONVERSÃO IMPLÍCITA DE

DADOS

CONVERSÃO EXPLÍCITA DE

DADOS

Page 59: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CONVERSÃO -

TO_NUMBER TO_DATE

NUMBER CARACTER DATE

TO_CHAR TO_CHAR

Page 60: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CONVERSÃO - TO_CHAR

Page 61: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CONVERSÃO - TO_CHAR

Page 62: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CONVERSÃO - TO_CHAR

Page 63: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CONVERSÃO - TO_CHAR

Page 64: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CONVERSÃO - TO_CHAR

http://pgdocptbr.sourceforge.net/pg80/functions-formatting.html

Page 65: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CONVERSÃO - TO_NUMBER

Page 66: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CONVERSÃO - TO_NUMBER

Page 67: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CONVERSÃO - TO_DATE

Page 68: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CONVERSÃO - TO_DATE

Page 69: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CONVERSÃO - TO_DATE

Page 70: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

FUNÇÕES DE CONVERSÃO - TO_DATE

Page 71: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

ANINHANDO FUNÇÕES

Page 72: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

ANINHANDO FUNÇÕES

Page 73: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

EXERCÍCIOS

Page 74: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

EXERCÍCIOS

1. Crie uma consulta para exibir a data corrente.

Page 75: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

EXERCÍCIOS2. Crie uma consulta para exibir o nome (c_name) e a raiz quadrada da conta do cliente (customer) do país (c_nationkey) 24 e com conta (c_acctbal) maior que R$ 9990

11 ROWS

Page 76: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

EXERCÍCIOS2. Altere a consulta do exercício 2 para exibir

a raiz quadrada em formato $99.00 e a coluna

nomeada como VALOR.

Page 77: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

EXERCÍCIOS4. Altere a consulta do exercício 3 para exibir

a quantidade de caracteres na coluna

 c_comment .

Page 78: SIMONE DOMINICO - AULA 3 · simone dominico - aula 3 sql - funÇÕes de uma Única linha. funÇÕes sql ... argumento. funÇÕes numÉricas - mod

EXERCÍCIOS5. Crie uma consulta para exibir o nome (c_name) e o telefone do cliente(customer) , e o telefone no formato numérico do país (c_nationkey) 24 e com conta (c_acctbal) maior que R$ 9990