A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Funções de Linha 17/04/06.

Apresentações semelhantes


Apresentação em tema: "Funções de Linha 17/04/06."— Transcrição da apresentação:

1 Funções de Linha 17/04/06

2 Funções de Linha Gerar ou construir novo valor não existente na tabela inicial. Valor construído a partir de dados de uma ou mais células da tabela original. Todas essas células deve pertencer a uma única linha dentro da tabela.

3 Funções de Linha – caso 1 * Novo valor obtido de colunas assinaladas
Ex. SELECT nome || nome-meio || sobrenome AS NOME FROM Pessoa WHERE matricula = 73847

4 Função de Linha – caso 2 Criação da coluna calculada Mat, n1, n2, n3
Media Mat, n1, n2, n3 A SELECT n1 + n2 + n3 AS media FROM A WHERE mat IN ( 3, 4 )

5 Funções de Linha   -  Estrutura das funções de linha   -  Funções de manipulação de caracteres   -  Funções numéricas   -  Trabalhando com datas   -  Funções de datas   -  Aninhando funções   -  Funções gerais (NVL, nullif, coalesce, etc.)   -  Função case   -  Função decode  

6 Estrutura SELECT FUNCAO_LINHA (campo [,campo2,...] ) FROM ....
WHERE ... Usar na cláusula SELECT

7 Funções de datas no postgres
SELECT CURRENT_TIME; SELECT CURRENT_DATE; SELECT CURRENT_TIMESTAMP; SELECT CURRENT_TIMESTAMP(2); SELECT LOCALTIMESTAMP; SELECT timeofday(); SELECT now(); SELECT TIMESTAMP 'now';

8 Tempo com meridiano SELECT TIMESTAMP 'now' AT TIME ZONE 'BRT'; ( Brasil ) SELECT TIMESTAMP 'now' AT TIME ZONE 'AKST' ( Alaska ) * Table B.4. Time Zone Abbreviations for Input

9 Funções de Tempo

10

11 Funções de Tempo Função OVERLAPS
Verificar se intervalos de tempo coincidem. SELECT (DATE ' ', DATE ' ') OVERLAPS (DATE ' ', DATE ' '); SELECT (DATE ' ', INTERVAL '100 days') OVERLAPS

12 Funções de Tempo Extract extrair parte de período de tempo
SELECT EXTRACT ( parametro FROM período)

13 EXTRACT- parâmetros Century Day Decade DOW DOY EPOCH
Século SELECT EXTRACT(CENTURY FROM TIMESTAMP ' :38:40'); Day Dia SELECT EXTRACT(DAY FROM TIMESTAMP ' :38:40'); Decade Década SELECT EXTRACT(DECADE FROM TIMESTAMP ' :38:40'); DOW Dia-semana (0-6) SELECT EXTRACT(DOW FROM TIMESTAMP ' :38:40'); DOY Dia-ano 1-365/366 EPOCH Segundos desde 1970 SELECT EXTRACT(EPOCH FROM TIMESTAMP WITH TIME ZONE ' :38:40-08'); SELECT EXTRACT(EPOCH FROM INTERVAL '5 days 3 hours'); SELECT TIMESTAMP WITH TIME ZONE 'epoch' * INTERVAL '1 second'

14 EXTRACT- parâmetros HOUR Millenium Milli Seconds Minute Quarter
Hora (0-23) SELECT EXTRACT(HOUR FROM TIMESTAMP ' :38:40'); Millenium milênio SELECT EXTRACT(millenium FROM TIMESTAMP ' :38:40'); Milli Seconds Mili-segundos SELECT EXTRACT(milliseconds FROM TIMESTAMP ' :38:40'); Minute Minutos 0-59 SELECT EXTRACT(minute FROM TIMESTAMP ' :38:40'); SELECT EXTRACT(minute FROM INTERVAL '5 days 3 hours') Quarter quadrimestre SELECT EXTRACT(quarter FROM TIME ' '); Second Segundos SELECT EXTRACT(second FROM TIMESTAMP WITH TIME ZONE ' :38:40-08'); SELECT EXTRACT(second FROM TIME WITH TIME ZONE ‘20:38:40-08');

15 Função CASE Estrutura análoga a estrutura IF/ELSE de linguagens de programação Semelhança com SWITCH-CASE da linguagem C Ansi

16 Função CASE SELECT campo1 , CASE campo1 WHEN valor1 THEN cmd
ELSE cmd3 END FROM tabela1 SELECT vl_total_pedido , CASE vl_total_pedido WHEN 200 THEN 'duzentos reais' WHEN 800 THEN '800 reais' ELSE 'outro valor' END FROM pedido;

17 Funções NULLIF

18 Função COALESCE

19 Função DECODE

20 Referências Manual do Postgres : B.2. Date/Time Key Words Livro
PATRICK, J. SQL Fundamentos. Cap. 9, 10 e 11


Carregar ppt "Funções de Linha 17/04/06."

Apresentações semelhantes


Anúncios Google