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.
Le funzionalità e i miglioramenti seguenti di Databricks SQL sono stati rilasciati nel 2026.
Marzo 2026
Databricks SQL versione 2026.10 è ora disponibile in anteprima
26 marzo 2026
Databricks SQL versione 2026.10 è ora disponibile nel canale di anteprima . Esamina la sezione seguente per conoscere le nuove funzionalità, i cambiamenti comportamentali e le correzioni di bug.
Gli errori delle metriche di osservazione non causano più il fallimento delle query
Gli errori durante la raccolta delle metriche di osservazione non causano più errori di esecuzione delle query. In precedenza, gli errori nelle OBSERVE clausole (ad esempio divisione per zero) potrebbero bloccare o interrompere l'intera query. A questo momento, la query viene completata correttamente e l'errore viene generato quando si chiama observation.get.
Clausola FILTER per le funzioni di aggregazione MEASURE
Le funzioni di aggregazione MEASURE supportano ora le clausole FILTER. In precedenza, i filtri venivano ignorati automaticamente.
Scritture ottimizzate per le operazioni CRTAS del catalogo Unity
CREATE OR REPLACE TABLE AS SELECT Le operazioni (CRTAS) sulle tabelle del catalogo Unity partizionate ora applicano di default le scritture ottimizzate, producendo un numero minore di file, ma di dimensioni maggiori. Per disabilitare, impostare spark.databricks.delta.optimizeWrite.UCTableCRTAS.enabled su false.
I valori della partizione timestamp usano il fuso orario di sessione
I valori della partizione timestamp ora usano il fuso orario della sessione di SQL Warehouse. Se sono presenti partizioni di timestamp scritte prima di Databricks SQL versione 2025.40, eseguire SHOW PARTITIONS per verificare i metadati della partizione prima di scrivere nuovi dati.
Parola chiave riservata DESCRIBE FLOW
Il DESCRIBE FLOW comando è ora disponibile. Se si dispone di una tabella denominata flow, usare DESCRIBE schema.flow, DESCRIBE TABLE flow o DESCRIBE `flow` con i backtick.
Operazioni del set booleano spatialSQL
ST_Difference, ST_Intersectione ST_Union usano una nuova implementazione con i miglioramenti seguenti:
- Le geometrie di input valide producono sempre un risultato e non generano più errori. Gli input non validi non generano errori, ma potrebbero non produrre risultati validi.
- Prestazioni circa 2 volte più veloci.
- I risultati possono differire dopo il 15° separatore decimale per le intersezioni tra segmenti di linea a causa di formule e ordine di operazioni diverse.
- I risultati vengono normalizzati per un output coerente e paragonabile:
- I punti vengono ordinati in base ai valori delle coordinate.
- Le stringhe di linea vengono create dai percorsi più lunghi possibili.
- Gli anelli poligoni vengono ruotati in modo che il primo punto abbia i valori di coordinate più piccoli.
- Questa normalizzazione si applica in tutti i casi tranne quando si chiama
ST_Differencecon due geometrie non sovrapposte, in cui viene restituita la prima geometria non modificata.
Tipi di eccezione per SQLSTATE
I tipi di eccezione supportano ora SQLSTATE. Se il codice analizza le eccezioni in base alla corrispondenza di stringhe o rileva tipi di eccezione specifici, aggiornare la logica di gestione degli errori.
Supporto dei tipi di dati DATETIMEOFFSET per Microsoft Azure Synapse
Il DATETIMEOFFSET tipo di dati è ora disponibile per le connessioni a Microsoft Azure Synapse.
Commenti della tabella Google BigQuery
Le descrizioni delle tabelle di Google BigQuery vengono risolte ed esposte come commenti di tabella.
Evoluzione dello schema con istruzioni INSERT
Usare la WITH SCHEMA EVOLUTION clausola con istruzioni SQL INSERT per evolvere automaticamente lo schema della tabella di destinazione durante le operazioni di inserimento. La clausola è supportata per INSERT INTO, INSERT OVERWRITE e INSERT INTO ... REPLACE. Per esempio:
INSERT WITH SCHEMA EVOLUTION INTO students TABLE visiting_students_with_additional_id;
Lo schema della tabella Delta Lake di destinazione viene aggiornato per supportare colonne aggiuntive o tipi ampliati dall'origine. Per informazioni dettagliate, vedere Evoluzione dello schema e INSERT sintassi delle istruzioni.
Valori NULL della struct conservati nelle operazioni INSERT
INSERT le operazioni con evoluzione dello schema o con cast implicito mantengono ora i NULL valori delle struct quando le tabelle di origine e di destinazione hanno ordini di campo struct diversi.
parse_timestamp funzione SQL
La funzione SQL di parse_timestamp analizza le stringhe di timestamp usando più modelli e viene eseguita nel motore Photon per migliorare le prestazioni durante l'analisi dei timestamp in più formati. Per informazioni sulla formattazione dei modelli datetime, vedere Modelli datetime .
max_by e min_by con limite facoltativo
Le funzioni di aggregazione max_by e min_by accettano ora un terzo argomento limit facoltativo (fino a 100.000). Se specificato, le funzioni restituiscono una matrice di valori fino a limit valori corrispondenti ai valori più grandi (o più piccoli) dell'espressione di ordinamento, semplificando le query top-K e bottom-K senza funzioni finestra o CTE.
Funzioni di aggregazione vettoriale e scalari
Le nuove funzioni SQL operano sui ARRAY<FLOAT> vettori per l'incorporamento e la somiglianza dei carichi di lavoro:
Funzioni di aggregazione:
- vector_avg: restituisce la media degli elementi di vettori in un gruppo.
- vector_sum: restituisce la somma a livello di elemento dei vettori in un gruppo.
Funzioni scalari:
- vector_cosine_similarity: restituisce la somiglianza del coseno di due vettori.
- vector_inner_product: restituisce il prodotto interno (punto) di due vettori.
- vector_l2_distance: restituisce la distanza Euclidea (L2) tra due vettori.
- vector_norm: restituisce la norma Lp di un vettore (1, 2 o infinito).
- vector_normalize: restituisce un vettore normalizzato per la lunghezza dell'unità.
Vedere Funzioni predefinite.
Supporto del cursore SQL nelle istruzioni composte
Le istruzioni composte di scripting SQL supportano ora l'elaborazione del cursore. Usare DECLARE CURSOR per definire un cursore, quindi l'istruzione OPEN, l'istruzione FETCH e l'istruzione CLOSE per eseguire la query e utilizzare le righe una alla volta. I cursori possono usare marcatori di parametro e gestori di condizioni, ad NOT FOUND esempio per l'elaborazione riga per riga.
Funzioni di schizzo top-k approssimative
Le nuove funzioni consentono di creare e combinare schizzi top-K approssimativi per l'aggregazione top-K distribuita:
- approx_top_k_accumulate: crea uno schema per gruppo.
- approx_top_k_combine: unisce schizzi.
- approx_top_k_estimate: restituisce i primi K elementi con conteggi stimati.
Per altre informazioni, vedere approx_top_k Funzioni di aggregazione e Funzioni predefinite.
Funzioni di bozza tupla
Le nuove funzioni di aggregazione e scalari per lo schizzo della tupla supportano conteggio e aggregazione distinti su coppie di riepilogo chiave.
Funzioni di aggregazione:
-
tuple_sketch_agg_doublefunzione di aggregazione -
tuple_sketch_agg_integerfunzione di aggregazione -
tuple_union_agg_doublefunzione di aggregazione -
tuple_union_agg_integerfunzione di aggregazione -
tuple_intersection_agg_doublefunzione di aggregazione -
tuple_intersection_agg_integerfunzione di aggregazione
Funzioni scalari:
- tuple_sketch_estimate
- tuple_sketch_summary
- tuple_sketch_theta
- tuple_union
- tuple_intersection
- differenza_tupla
Vedere Funzioni predefinite.
Dipendenze personalizzate per UDTF Python di Unity Catalog
Le funzioni di tabella definite dall'utente (UDTF) del catalogo Unity possono ora utilizzare dipendenze personalizzate per le librerie esterne, in modo da poter usare pacchetti al di là di quelli disponibili nell'ambiente predefinito di SQL Warehouse. Consultare Come estendere le funzioni definite dall'utente utilizzando dipendenze personalizzate.
Nuove funzioni geospaziali
Sono ora disponibili le funzioni geospaziali seguenti:
-
st_estimatesridfunction: stima l'identificatore SRID (Spatial Reference Identifier) più proiettato per una geometria di input. -
st_force2dfunzione: converte una geografia o una geometria nella relativa rappresentazione 2D. -
st_nringsfunzione: conta il numero totale di anelli in un poligono o multipolygon, inclusi gli anelli esterni e interni. -
st_numpointsfunction: conta il numero di punti non vuoti in una geografia o in una geometria.
Supporto foton per le funzioni geospaziali
Le funzioni geospaziali seguenti vengono ora eseguite sul motore Photon per ottenere prestazioni più veloci:
Febbraio 2026
Databricks SQL versione 2025.40 è in fase di implementazione in Current
23 febbraio 2026
Databricks SQL versione 2025.40 viene implementata nel canale Current. Vedere le funzionalità nel 2025.40.
Databricks SQL versione 2025.40 è ora disponibile in anteprima
11 febbraio 2026
Databricks SQL versione 2025.40 è ora disponibile nel canale di anteprima . Esamina la sezione seguente per conoscere le nuove funzionalità, i cambiamenti comportamentali e le correzioni di bug.
Lo scripting SQL è disponibile a livello generale
Lo scripting SQL è ora disponibile a livello generale. Scrivere logica procedurale con SQL, incluse istruzioni condizionali, cicli, variabili locali e gestione delle eccezioni.
Marcatori di parametro ora supportati in più contesti SQL
È ora possibile usare marcatori di parametro denominati (:param) e senza nome (?) ovunque sia consentito un valore letterale del tipo appropriato. Sono incluse istruzioni DDL, CREATE VIEW v AS SELECT ? AS c1ad esempio , i tipi di colonna, DECIMAL(:p, :s)ad esempio , e i commenti, COMMENT ON t IS :commentad esempio . In questo modo è possibile parametrizzare un'ampia gamma di istruzioni SQL senza esporre il codice agli attacchi SQL injection. Vedere Marcatori di parametro.
IDENTIFIER clausola estesa a più contesti SQL
La IDENTIFIER clausola , che esegue il cast delle stringhe ai nomi di oggetto SQL, è ora supportata in quasi ogni contesto in cui è consentito un identificatore. In combinazione con l'indicatore di parametro espanso e il supporto di unione di stringhe letterali, è possibile parametrizzare qualsiasi elemento dagli alias di colonna (AS IDENTIFIER(:name)) alle definizioni di colonna (IDENTIFIER(:pk) BIGINT NOT NULL). Vedere la clausola IDENTIFIER.
Coalescenza di stringhe letterali supportata ovunque
Valori letterali stringa sequenziale, 'Hello' ' World' ad esempio ora uniti 'Hello World' in qualsiasi contesto in cui sono consentiti valori letterali stringa, incluso COMMENT 'This' ' is a ' 'comment'. Vedere STRING tipo.
Nuova funzione BITMAP_AND_AGG
È ora disponibile una nuova funzione BITMAP_AND_AGG per integrare la libreria di BITMAP funzioni esistente.
Nuove funzioni di Sketch Theta per conteggi distinti approssimativi
È ora disponibile una nuova libreria di funzioni per conteggi approssimativi distinti e operazioni su insiemi utilizzando Datasketches Theta Sketch.
-
theta_sketch_aggfunzione di aggregazione -
theta_union_aggfunzione di aggregazione -
theta_intersection_aggfunzione di aggregazione -
theta_sketch_estimateFunzione -
theta_unionFunzione -
theta_differenceFunzione -
theta_intersectionFunzione
Nuove funzioni di schizzo KLL per quantili approssimativi
È ora disponibile una nuova libreria di funzioni per la creazione di schizzi KLL per calcoli quantile approssimativi:
-
kll_sketch_agg_bigintfunzione di aggregazione -
kll_sketch_get_quantile_bigintFunzione -
kll_sketch_merge_bigintFunzione -
kll_sketch_agg_doublefunzione di aggregazione -
kll_sketch_get_quantile_doubleFunzione -
kll_sketch_merge_doubleFunzione -
kll_sketch_agg_floatfunzione di aggregazione -
kll_sketch_get_quantile_floatFunzione -
kll_sketch_merge_floatFunzione -
kll_sketch_get_n_bigintFunzione -
kll_sketch_get_rank_bigintFunzione -
kll_sketch_to_string_bigintFunzione -
kll_sketch_get_n_doubleFunzione -
kll_sketch_get_rank_doubleFunzione -
kll_sketch_to_string_doubleFunzione -
kll_sketch_get_n_floatFunzione -
kll_sketch_get_rank_floatFunzione -
kll_sketch_to_string_floatFunzione
È possibile unire più schizzi KLL in un contesto di aggregazione usando kll_merge_agg_bigint, kll_merge_agg_double e kll_merge_agg_float.
Funzioni della finestra SQL nelle visualizzazioni delle metriche
È ora possibile usare le funzioni della finestra SQL nelle visualizzazioni delle metriche per calcolare i totali, le classificazioni e altri calcoli basati su finestre.
Nuove funzioni geospaziali
Sono ora disponibili le nuove funzioni geospaziali seguenti:
-
st_azimuthfunzione: restituisce l'azimuth orientato verso nord dal primo punto al secondo in radianti entro il contesto di[0, 2π). -
st_boundaryfunction: restituisce il limite della geometria di input. -
st_closestpointfunzione: restituisce la proiezione 2D di un punto sulla prima geometria più vicina alla seconda geometria. -
st_geogfromewktfunction: analizza una descrizione EWKT (Extended Well-Known Text) di un'area geografica. -
st_geomfromewktfunction: analizza una descrizione EWKT (Extended Well-Known Text) di una geometria.
Supporto dell'input EWKT per le funzioni geometry e geography esistenti
Le seguenti funzioni ora accettano l'Extended Well-Known Text (EWKT) come input:
Miglioramento delle prestazioni per le query ripetute sulle tabelle con filtri di riga e maschere di colonna
Le query idonee ripetute sulle tabelle con filtri di riga e maschere di colonna ora traggono vantaggio dalla memorizzazione nella cache dei risultati delle query migliorata, con tempi di esecuzione più rapidi.
Miglioramento delle prestazioni delle funzioni geospaziali
Le prestazioni del join spaziale sono migliorate con il supporto del join spaziale distribuito. Le funzioni ST seguenti dispongono ora di implementazioni photon:
FSCK REPAIR TABLE include il ripristino dei metadati per impostazione predefinita
FSCK REPAIR TABLE include ora un passaggio iniziale di ripristino dei metadati prima di verificare la presenza di file di dati mancanti, consentendo il funzionamento nelle tabelle con checkpoint danneggiati o valori di partizione non validi. Inoltre, la colonna dataFilePath nello schema di output FSCK REPAIR TABLE DRY RUN è ora annullabile per supportare nuovi tipi di problemi in cui il percorso del file di dati non è applicabile.
DESCRIBE TABLE l'output include una colonna dei metadati
L'output di DESCRIBE TABLE [EXTENDED] include ora una metadata colonna per tutti i tipi di tabella. Questa colonna contiene metadati semantici (nome visualizzato, formato e sinonimi) definiti nella tabella come stringa JSON.
Strutture NULL preservate nelle operazioni MERGE, UPDATE, e di scrittura in streaming
Gli struct NULL vengono ora mantenuti come NULL nelle operazioni di scrittura Delta Lake MERGE, UPDATE, e di streaming che includono cast del tipo di struct. In precedenza, le strutture NULL venivano espanse in strutture con tutti i campi impostati su NULL.
Colonne di partizione materializzate nei file Parquet
Ora, le tabelle Delta Lake partizionate materializzano le colonne di partizione nei file di dati Parquet appena scritti. In precedenza, i valori di partizione venivano archiviati solo nei metadati del log delle transazioni Delta Lake. I carichi di lavoro che leggono direttamente i file Parquet scritti da Delta Lake vedono colonne di partizione aggiuntive nei file appena scritti.
I valori della partizione timestamp rispettano il fuso orario della sessione
I valori della partizione timestamp vengono ora modificati correttamente usando la spark.sql.session.timeZone configurazione. In precedenza, venivano erroneamente convertiti in UTC usando il fuso orario JVM.
Limitazioni relative al tempo di viaggio aggiornate
Azure Databricks blocca ora le query di spostamento del tempo oltre la deletedFileRetentionDuration soglia per tutte le tabelle. Il VACUUM comando ignora l'argomento durata conservazione tranne quando il valore è 0 ore. Non è possibile impostare deletedFileRetentionDuration dimensioni maggiori di logRetentionDuration.
SHOW TABLES DROPPED rispetta LIMIT clausola
SHOW TABLES DROPPED ora rispetta correttamente la LIMIT clausola .