Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Função
Aplica-se a:
SQL do Databricks
Runtime do Databricks
Retorna field de source.
Observação
Ao extrair campos de um TIMESTAMP (TIMESTAMP_LTZ), o resultado é baseado no fuso horário da sessão.
Sintaxe
extract(field FROM source)
Argumentos
-
field: uma palavra-chave que seleciona a parte desourceque deve ser extraída. -
source: ADATE,TIMESTAMP,TIMESTAMP_NTZouINTERVALexpressão.
Devoluções
Se field for SECOND, um DECIMAL(8, 6).
Em todos os outros casos INTEGER.
Valores com suporte de field quando source for DATE ou TIMESTAMP:
-
YEAR,Y,YEARS,YR,YRS: o campo do ano -
YEAROFWEEK: o ano de numeração da semana ISO 8601 em que o datetime cai. Por exemplo, 2005-01-02 faz parte da 53ª semana do ano 2004. Portanto, o resultado é 2004 -
QUARTER,QTR: o trimestre (1 - 4) do ano em que o datetime cai -
MONTH,MON,MONS,MONTHS: o campo do mês (1 - 12) -
WEEK,W,WEEKS: o número do ano em semana a semana baseado no ISO 8601. Considera-se que a semana comece em uma segunda-feira e a semana 1 seja a primeira semana com >três dias. No sistema de numeração de semana ISO, é possível que as datas do início de janeiro façam parte da 52ª ou da 53ª semana do ano anterior e que as datas do final de dezembro façam parte da primeira semana do ano seguinte. Por exemplo, 2005-01-02 faz parte da 53ª semana do ano 2004, enquanto 2012-12-31 faz parte da primeira semana de 2013 -
DAY,D,DAYS: o campo do dia do mês (1 - 31) -
DAYOFWEEK,DOW: o dia da semana para datetime como domingo (1) a sábado (7) -
DAYOFWEEK_ISO,DOW_ISO: o dia da semana baseado em ISO 8601 para datetime como segunda-feira (1) a domingo (7) -
DOY: o dia do ano (1 - 365/366) -
HOUR,H,HOURS,HR,HRS: o campo das hora (0 - 23) -
MINUTE,M,MIN,MINS,MINUTES: o campo do minutos (0 - 59) -
SECOND,S,SEC,SECONDS,SECS: o campo do segundos, incluindo partes fracionárias
Valores com suporte de field quando source for INTERVAL (não diferencia maiúsculas de minúsculas):
-
YEAR,Y,YEARS,YR,YRS: o total de meses/12 -
MONTH,MON,MONS,MONTHS: o total de meses/12 -
DAY,D,DAYS: a parte de dias do intervalo -
HOUR,H,HOURS,HR,HRS: quantas horas os microssegundos contêm -
MINUTE,M,MIN,MINS,MINUTES: quantos minutos restam após tirar as horas dos microssegundos -
SECOND,S,SEC,SECONDS,SECS: o tempo em segundos com frações restantes após a contagem de horas e de minutos dos microssegundos
Para retornar o acrônimo de três letras para o dia da semana, use a função dayname .
Exemplos
> SELECT extract(YEAR FROM TIMESTAMP '2019-08-12 01:00:00.123456');
2019
> SELECT extract(week FROM TIMESTAMP'2019-08-12 01:00:00.123456');
33
> SELECT extract(DAY FROM DATE'2019-08-12');
12
> SELECT extract(SECONDS FROM TIMESTAMP'2019-10-01 00:00:01.000001');
1.000001
> SELECT extract(MONTHS FROM INTERVAL '2-11' YEAR TO MONTH);
11
> SELECT extract(SECONDS FROM INTERVAL '5:00:30.001' HOUR TO SECOND);
30.001000