Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a: Databricks SQL
Databricks Runtime
Esistono diversi scenari comuni per l'utilizzo di datetime in Azure Databricks:
- Le fonti dati CSV e JSON usano la stringa modello per l'analisi e la formattazione del contenuto di data e ora.
- Funzioni datetime correlate alla conversione da
STRING
e versoDATE
oTIMESTAMP
. Ad esempio:
Tabella modelli
Azure Databricks usa lettere di modello nella tabella seguente per l'analisi e la formattazione di data e timestamp:
Simbolo | significato | Presentazione | Esempi |
---|---|---|---|
G | epoca | Testo | ANNUNCIO; Anno Domini |
e | anno | anno | 2020; 20 |
D | giorno dell'anno | numero(3) | 189 |
M/L | mese dell'anno | mese | 7; 07; Lug; Luglio |
d | giorno del mese | numero(3) | 28 |
Q/q | trimestre dell'anno | numero/testo | 3; 03; Q3; Terzo trimestre |
E | giorno della settimana | Testo | Mar; Martedì |
F | giorno della settimana allineato nel mese | numero(1) | 3 |
un | am-pm-del-giorno | am-pm | pomeriggio |
h | orologio-ora-di-am-pm (1-12) | numero(2) | 12 |
Okay | ora del mattino-pomeriggio (0-11) | numero(2) | 0 |
Okay | ora del giorno (1-24) | numero(2) | 0 |
H | ora del giorno (0-23) | numero(2) | 0 |
m | minuto dell'ora | numero(2) | 30 |
s | secondo del minuto | numero(2) | 55 |
S | frazione di secondo | frazione | 978 |
V | ID del fuso orario | ID di zona | America/Los_Angeles; Z; -08:30 |
z | nome fuso orario | nome-zona | Ora standard del Pacifico; PST |
O | offset di zona localizzato | offset-O | GMT +8; GMT +08:00; UTC-08:00; |
X | offset di zona 'Z' per valore zero | offset-X | Z; -08; -0830; -08:30; -083015; -08:30:15; |
x | offset del fuso orario | offset-x | +0000; -08; -0830; -08:30; -083015; -08:30:15; |
Z | offset del fuso orario | offset-Z | +0000; -0800; -08:00; |
' | escape per il testo | delimitatore | |
'' | virgoletta singola | letterale | ' |
[ | inizio sezione facoltativa | ||
] | fine della sezione opzionale |
Il conteggio delle lettere del modello determina il formato.
Testo: lo stile del testo viene determinato in base al numero di lettere di motivo utilizzate. Meno di 4 lettere di formato utilizzeranno la forma di testo abbreviata, in genere un'abbreviazione, ad esempio, il giorno della settimana lunedì potrebbe essere abbreviato in "Lun". Esattamente 4 lettere del pattern utilizzeranno il formato di testo completo, tipicamente la descrizione completa, ad esempio, il giorno della settimana Lunedì potrebbe restituire "Lunedì". 5 o più lettere avranno esito negativo.
Number(n): n qui rappresenta il numero massimo di lettere con cui questo tipo di pattern datetime può essere utilizzato. Se il numero di lettere è uno, il valore viene restituito usando il numero minimo di cifre e senza spaziatura interna. In caso contrario, il conteggio delle cifre viene usato come larghezza del campo di output, con il valore riempito di zeri se necessario.
Numero/testo: se il numero di lettere del criterio è 3 o superiore, usare le regole di testo precedenti. In caso contrario, usare le regole numeriche sopra riportate.
Frazione: usare uno o più caratteri contigui
'S'
(fino a 9), ad esempioSSSSSS
, per analizzare e formattare la frazione di secondo. Per l'analisi, la lunghezza della frazione accettabile può essere [1, il numero di 'S' contiguo]. Per la formattazione, la lunghezza della frazione viene riempita in base al numero di 'S' contigui con zeri. Azure Databricks supporta datetime di precisione fino al microsecondo, che ha fino a 6 cifre significative, ma può analizzare i nanosecondi con la parte eccedente troncata.Anno: il conteggio delle lettere determina la larghezza minima del campo al di sotto della quale viene utilizzato il riempimento. Se il conteggio delle lettere è due, viene utilizzato un formato a due cifre ridotto. Per la stampa, restituisce le due cifre più a destra. Per l'analisi, verrà analizzato usando il valore di base 2000, con conseguente anno compreso nell'intervallo compreso tra 2000 e 2099 inclusi. Se il conteggio delle lettere è minore di quattro (ma non due), il segno viene restituito solo per anni negativi. In caso contrario, il segno viene restituito se la larghezza del riquadro viene superata quando 'G' non è presente. 7 o più lettere avranno esito negativo.
Mese: segue la regola numero/testo. Il modulo di testo dipende dalle lettere
'M'
: indica il formato "standard" ed'L'
è per il formato "autonomo". Queste due forme sono diverse solo in alcune lingue. Ad esempio, in russo, 'Июль' è la forma autonoma di luglio e 'Июля' è il formato standard. Ecco alcuni esempi per tutte le lettere di modello supportate.'M'
o'L'
: numero di mese in un anno a partire da 1. Non esiste alcuna differenza tra'M'
e'L'
. Il mese da 1 a 9 viene stampato senza riempimento.> SELECT date_format(date '1970-01-01', 'M'); 1 > SELECT date_format(date '1970-12-01', 'L'); 12
'MM'
o'LL'
: numero di mese in un anno a partire da 1. Il riempimento con zero viene aggiunto per i mesi da 1 a 9.> SELECT date_format(date '1970-1-01', 'LL'); 01 > SELECT date_format(date '1970-09-01', 'MM'); 09
'MMM'
: rappresentazione testuale breve nel formato standard. Il modello del mese deve far parte di un modello di data e non di un modello solo per il mese, ad eccezione delle impostazioni locali in cui non esiste alcuna differenza tra formato di data e formato autonomo, come accade in inglese.> 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'
: rappresentazione completa del mese in forma testuale standard. Viene usato per l'analisi/formattazione dei mesi come parte di date/timestamp.> 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: questo restituisce la parte del giorno corrispondente a "am" o "pm". Il numero di lettere del modello deve essere 1.
ID zona (V): visualizza l'ID del fuso orario. La lunghezza delle lettere del modello deve essere 2.
Nomi di zona(z): restituisce il nome testuale visualizzato dell'ID del fuso orario. Se il numero di lettere è uno, due o tre, viene restituito il nome breve. Se il numero di lettere è quattro, viene restituito il nome completo. Cinque o più lettere avranno esito negativo.
Offset X e x: formatta l'offset in base al numero di lettere del formato. Una lettera restituisce solo l'ora, ad esempio '+01', a meno che il minuto non sia diverso da zero nel qual caso viene restituito anche il minuto, ad esempio '+0130'. Due lettere restituisce l'ora e il minuto, senza due punti, ad esempio '+0130'. Tre lettere restituisce l'ora e il minuto, con due punti, ad esempio '+01:30'. Quattro caratteri restituiscono l'ora e il minuto e il secondo facoltativo, senza il due punti, ad esempio "+013015". Cinque lettere restituisce l'ora e il minuto e il secondo facoltativo, con due punti, ad esempio '+01:30:15'. Sei o più lettere avranno esito negativo. La lettera di motivo 'X' (maiuscola) restituirà 'Z' quando l'offset da restituire sarebbe zero, mentre la lettera di motivo 'x' (minuscola) restituirà '+00', '+0000' o '+00:00'.
Offset O: formatta l'offset localizzato in base al numero di lettere del modello. Una lettera restituisce la forma breve dell'offset localizzato, che è un testo dell'offset localizzato, come 'GMT', con ora senza zero iniziale, minuto opzionale a 2 cifre e secondi se diversi da zero, il tutto separato dai due punti, ad esempio 'GMT+8'. Quattro lettere restituisce il formato completo, che è testo offset localizzato, ad esempio "GMT, con campo ora e minuto a 2 cifre, secondo campo facoltativo se diverso da zero e due punti, ad esempio "GMT +08:00". Qualsiasi altro conteggio di lettere avrà esito negativo.
Offset Z: formatta l'offset in base al numero di lettere del modello. Una, due o tre lettere restituisce l'ora e il minuto, senza due punti, ad esempio '+0130'. L'output è '+0000' quando l'offset è zero. Quattro lettere producono la forma completa di offset localizzato, equivalente a quattro lettere di Offset-O. L'output è il testo localizzato relativo all'offset corrispondente quando l'offset è zero. Cinque lettere restituiscono l'ora, il minuto e, eventualmente, il secondo se diverso da zero, con due punti. Restituisce "Z" se l'offset è zero. Sei o più lettere avranno esito negativo.
Inizio e fine della sezione facoltativa: usare
[]
per definire una sezione facoltativa e forse annidata. Durante la formattazione, tutti i dati validi vengono restituiti anche nella sezione facoltativa. Durante l'analisi, l'intera sezione potrebbe non essere presente nella stringa analizzata. Una sezione facoltativa viene avviata da[
e terminata usando]
(o alla fine del modello).I simboli di 'E', 'F', 'q' e 'Q' possono essere usati solo per la formattazione datetime, ad esempio
date_format
. Non sono consentite usate per l'analisi datetime, ad esempioto_timestamp
.