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.
Aplica-se a: SQL do Databricks
Databricks Runtime
Há vários cenários comuns de uso de datetime no Azure Databricks:
- As fontes de dados CSV e JSON usam a cadeia de caracteres do padrão para analisar e formatar o conteúdo do datetime.
- Funções datetime relacionadas a converter
STRING
de e paraDATE
ouTIMESTAMP
. Por exemplo:
Tabela de padrões
O Azure Databricks usa as letras do padrão na tabela a seguir para a análise e a formatação de data e carimbo de data/hora:
Símbolo | Significado | Apresentação | Exemplos |
---|---|---|---|
G | era | Texto | DC; Depois de Cristo |
y | ano | ano | 2020; 20 |
D | dia do ano | número(3) | 189 |
M/L | mês do ano | mês | 7; 07; Jul; Julho |
d | dia do mês | número(3) | 28 |
P/q | trimestre do ano | número/texto | 3; 03; T3; 3º trimestre |
E. | day_of_week | Texto | Ter; Terça-feira |
F | dia de semana alinhado no mês | número(1) | 3 |
um | am-pm-do-dia | am-pm | PM |
h | clock-hour-of-am-pm (1-12) | número(2) | 12 |
K | hora-of-am-pm (0-11) | número(2) | 0 |
k | relógio-hora do dia (1-24) | número(2) | 0 |
H | hora do dia (0-23) | número(2) | 0 |
m | minuto da hora | número(2) | 30 |
s | segundo de minuto | número(2) | 55 |
S | fração de segundo | fração | 978 |
V | ID do fuso horário | identificação da zona | América/Los_Angeles; Z; -08:30 |
z | nome da time-zone | nome da zona | Hora Oficial do Pacífico; PST |
O | zone-offset localizada | offset-O | GMT+8; GMT+08:00; UTC-08:00; |
X | deslocamento de zona 'Z' para zero | offset-X | Z; -08; -0830; -08:30; -083015; -08:30:15; |
x | deslocamento de zona | offset-x | +0000; -08; -0830; -08:30; -083015; -08:30:15; |
Z | deslocamento de zona | offset-Z | +0000; -0800; -08:00; |
' | escape de texto | delimitador | |
'' | aspas simples | literal | ' |
[ | início da seção opcional | ||
] | final da seção opcional |
A contagem de letras padrão determina o formato.
Texto: o estilo de texto é determinado com base no número de letras do padrão usadas. Menos de 4 letras de padrão usarão o formato de texto curto, normalmente uma abreviação, por exemplo, o dia da semana de segunda-feira pode gerar "Seg". Exatamente 4 letras de padrão usarão o formulário de texto completo, normalmente a descrição completa, por exemplo, o dia da semana de segunda-feira pode gerar "segunda-feira". Haverá falha em 5 ou mais letras.
Number(n): o n aqui representa a contagem máxima de letras que esse tipo de padrão datetime pode ser usado. Se a contagem de letras for uma, o valor será de saída usando o número mínimo de dígitos e sem preenchimento. Caso contrário, a contagem de dígitos é usada como a largura do campo de saída, com o valor zero-preenchido conforme necessário.
Número/texto: se a contagem de letras padrão for 3 ou maior, use as regras de texto acima. Caso contrário, use as regras de Número acima.
Fração: use um ou mais (até 9) caracteres contíguos
'S'
, por exemplo,SSSSSS
para analisar e formatar a fração de segundo. Para análise, o comprimento de fração aceitável pode ser [1, o número de 'S' contíguos]. Para formatação, o comprimento da fração seria adicionado ao número de 'S' contíguos com zeros. O Azure Databricks dá suporte a datetime de precisão de micro de segundo, que tem até 6 dígitos significativos, mas pode analisar o nano-of-second com uma parte excedente truncada.Ano: a contagem de letras determina a largura mínima do campo abaixo do qual o preenchimento é usado. Se a contagem de letras for duas, um formulário de dois dígitos reduzidos será usado. Para impressão, isso gera os dois dígitos da extrema direita. Para análise, isso será analisado usando o valor base de 2000, resultando em um ano dentro do intervalo de 2000 a 2099, inclusive. Se a contagem de letras for menor que quatro (mas não duas), o sinal será apenas de saída por anos negativos. Caso contrário, o sinal será exibido se a largura do preenchimento for excedida quando 'G' não estiver presente. 7 ou mais letras falharão.
Mês: segue a regra de Número/Texto. O formulário de texto depende de letras -
'M'
denota o formulário 'standard' e'L'
é para o formulário 'autônomo'. Essas duas formas são diferentes somente em alguns idiomas específicos. Por exemplo, em russo, 'Июль' é a forma autônoma de julho e 'Июля' é o formulário padrão. Aqui estão exemplos de todas as letras padrão com suporte:'M'
ou'L'
: o número do mês em um ano começando em 1. Não há nenhuma diferença entre'M'
e'L'
. O mês de 1 a 9 é mostrado sem preenchimento.> SELECT date_format(date '1970-01-01', 'M'); 1 > SELECT date_format(date '1970-12-01', 'L'); 12
'MM'
ou'LL'
: o número do mês em um ano começando em 1. O preenchimento zero é adicionado para os meses de 1 a 9.> SELECT date_format(date '1970-1-01', 'LL'); 01 > SELECT date_format(date '1970-09-01', 'MM'); 09
'MMM'
: representação textual curta no formulário padrão. O padrão de mês deve ser parte de um padrão de data não apenas um mês autônomo, exceto localidades em que não há nenhuma diferença entre formatos autônomos, como em inglês.> SELECT date_format(date '1970-01-01', 'd MMM'); 1 Jan -- Passing a format pattern to to_csv() > SELECT to_csv(named_struct('date', date '1970-01-01'), map('dateFormat', 'dd MMM', 'locale', 'RU')); 01 янв.
'MMMM'
: representação textual curta no formulário padrão. Ele é usado para analisar/formatar meses como parte de datas/carimbos de data/hora.> SELECT date_format(date '1970-01-01', 'd MMMM'); 1 January -- Passing a format pttern to to_csv() > SELECT to_csv(named_struct('date', date '1970-01-01'), map('dateFormat', 'd MMMM', 'locale', 'RU')); 1 января
am-pm: isso produz am-pm-of-day. A contagem de letras do padrão deve ser 1.
ID da Zona(V): isso gera a exibição da ID do fuso horário. A contagem de letras do padrão deve ser 2.
Nomes de zona(z): isso gera o nome textual de exibição da ID de fuso horário. Se a contagem de letras for uma, duas ou três, o nome curto será a saída. Se a contagem de letras for quatro, o nome completo será a saída. Haverá falha em cinco ou mais letras.
Offset-X e x: formata a diferença com base no número de letras do padrão. Uma letra exibe apenas a hora, como '+01', se o minuto não for zero, caso em que o minuto também é exibido, como '+0130'. Dois caracteres exibem a hora e o minuto, sem dois-pontos, como '+0130'. Três caracteres exibem a hora e o minuto, com dois-pontos, como '+01:30'. Quatro letras produzem a hora e o minuto e o segundo opcional, sem usar dois-pontos, como '+013015'. Cinco caracteres produzem a hora, o minuto e o segundo opcional, separados por dois-pontos, como '+01:30:15'. Seis ou mais letras falharão. A letra padrão 'X' (maiúscula) produzirá 'Z' quando o deslocamento a ser produzido for zero, enquanto a letra padrão 'x' (minúscula) produzirá '+00', '+0000' ou '+00:00'.
Offset-O: formata a diferença localizada com base no número de letras do padrão. Uma letra gera a forma curta do deslocamento localizado, que é o texto de deslocamento localizado, como 'GMT', com hora sem zero à esquerda, minuto opcional de 2 dígitos e segundo se não zero, e dois-pontos, por exemplo 'GMT+8'. Quatro letras geram a forma completa, que é o texto de fuso horário localizado, como 'GMT', com campos de hora e minuto com 2 dígitos, campo de segundos opcional se não for zero, e dois-pontos, por exemplo, 'GMT+08:00'. Qualquer outra contagem de letras falhará.
Offset-Z: formata a diferença com base no número de letras do padrão. Uma, duas ou três letras gera a hora e o minuto, sem dois-pontos, como '+0130'. A saída é '+0000' quando o offset é zero. Quatro letras geram a forma completa de diferença localizado, equivalente a quatro letras de Offset-O. A saída será o texto de diferença localizada correspondente se a diferença for zero. As cinco letras geram a hora, minuto, com o segundo opcional, se for diferente de zero, com dois-pontos. Ele produz 'Z' quando o deslocamento é zero. Seis ou mais letras falharão.
Início e término da seção opcional: use
[]
para definir uma seção opcional e talvez aninhada. Durante a formatação, todos os dados válidos são gerados mesmo que estejam na seção opcional. Durante a análise, a seção inteira pode estar ausente da cadeia de caracteres analisada. Uma seção opcional é iniciada pelo[
e terminada usando]
(ou no final do padrão).Símbolos de 'E', 'F', 'q' e 'Q' só podem ser usados para formatação de data e hora, como em
date_format
. Eles não têm permissão para usar a análise de datetime, por exemplo,to_timestamp
.