Note sulla versione di Databricks SQL 2026

Le funzionalità e i miglioramenti seguenti di Databricks SQL sono stati rilasciati nel 2026.

Maggio 2026

Databricks SQL versione 2026.15 è ora disponibile in anteprima

26 maggio 2026

Databricks SQL versione 2026.15 è ora disponibile nel canale di anteprima . Esamina la sezione seguente per conoscere le nuove funzionalità, i cambiamenti comportamentali e le correzioni di bug.

XPath non recupera più DTD esterni

Quando si valuta xpath su XML, Azure Databricks non carica più le definizioni dei tipi di documento esterne (DTD) dichiarate nel documento. In precedenza, XPath poteva non riuscire quando il codice XML conteneva un riferimento DTD esterno che puntava a un URL in formato non valido o a un endpoint non raggiungibile. Poiché la convalida DTD è separata dalla valutazione XPath, le query che hanno già avuto esito positivo restituiscono gli stessi risultati di prima. Le query che prima fallivano solo durante il recupero del DTD esterno ora possono riuscire.

Conservazione degli struct NULL in INSERT, MERGE e scritture di streaming con evoluzione dello schema

Per INSERT, MERGE e le scritture di streaming che usano l'evoluzione dello schema, uno struct NULL nell'origine viene ora memorizzato come NULL nella destinazione. In precedenza, tale valore veniva materializzato in modo non corretto come struct non Null con ogni campo impostato su NULL, mentre le stesse operazioni senza evoluzione dello schema conservavano correttamente gli struct NULL. Se il codice si basava sulla ricezione di uno struct non Null i cui campi erano tutti NULL, aggiornare il codice per gestire invece uno struct NULL.

Supporto NullType (VOID) nelle tabelle Delta

Le tabelle Delta Lake ora supportano colonne VOID. In precedenza, le colonne VOID venivano ignorate senza alcuna segnalazione dalle letture di DataFrame basate sul percorso e dalle query di time travel. Ora queste query includono le colonne VOID nell'output. Le scritture non sono interessate. Consultare VOID tipo per le restrizioni su dove le colonne VOID possono apparire nello schema.

Esaminare tutte le query che leggono i dati da tabelle Delta Lake con VOID colonne per verificare che gestiscano correttamente le colonne aggiuntive. Le query che dipendono dal numero di colonne o dalla posizione, ad esempio INSERT INTO ... SELECT *, potrebbero iniziare a non riuscire dopo l'aggiornamento. In particolare, alcune INSERT query con evoluzione dello schema abilitata potrebbero spostare automaticamente i dati nelle colonne sbagliate.

SHOW CREATE TABLE supporta le visualizzazioni delle metriche

SHOW CREATE TABLE supporta ora le visualizzazioni delle metriche. In precedenza, l'esecuzione di questo comando in una visualizzazione metrica generava un errore. L'output per le visualizzazioni delle metriche include il nome completo in tre parti con catalogo (ad esempio, CREATE VIEW catalog.db.my_metric_view ...), rendendo più semplice ricreare la visualizzazione delle metriche nella posizione corretta.

Correzione per la perdita di righe in LEFT OUTER JOIN LATERAL

È stato risolto un bug che eliminava erroneamente le righe dalle LEFT OUTER JOIN LATERAL query. Le query che usano questo costrutto restituiscono ora i risultati corretti. Per ripristinare temporaneamente il comportamento precedente, impostare spark.databricks.sql.optimizer.lateralJoinPreserveOuterSemantic su true.

NATURAL JOIN rispetta la corrispondenza di colonne senza distinzione di maiuscole

NATURAL JOIN ora utilizza correttamente la corrispondenza di colonne senza distinzione tra maiuscole e minuscole quando spark.sql.caseSensitive è impostato su false (di default). In precedenza, NATURAL JOIN veniva utilizzato un confronto con distinzione tra maiuscole e minuscole per identificare le colonne comuni, causando che colonne diverse solo per caso (ad esempio, ID rispetto a id) non venissero riconosciute come corrispondenti. Ciò ha NATURAL JOIN causato la generazione invisibile all'utente dei risultati di cross join. Le query interessate da questo bug restituiscono ora risultati corretti con colonne unite correttamente.

Convalida delle dipendenze delle funzioni definite dall'utente (UDF) SQL nel catalogo Unity

Il Catalogo Unity impone ora la convalida delle dipendenze per le funzioni definite dall'utente SQL per impedire il bypass dei controlli di accesso. In precedenza, le funzioni SQL create tramite l'API REST potevano fare riferimento alle dipendenze a cui l'utente non aveva accesso. Le funzioni SQL definite dall'utente con configurazioni di dipendenza non valide sono ora impedite dall'esecuzione.

Scritture ottimizzate per le tabelle partizionate del Catalogo Unity create con CRTAS

Le scritture ottimizzate vengono ora applicate correttamente alle tabelle del catalogo Unity partizionate create con CREATE OR REPLACE TABLE ... AS SELECT (CRTAS). In precedenza, CRTAS nelle nuove tabelle del catalogo Unity partizionate non applicava scritture ottimizzate, generando un numero più elevato di file di piccole dimensioni per partizione. Questa correzione può aumentare la latenza di scrittura. Per ripristinare il comportamento precedente, impostare spark.databricks.delta.optimizeWrite.UCTableCRTAS.enabled su false.

Correzione dell'autorità EPSG non corretta per SRID definito da ESRI 102100

Il mapping CRS (Coordinate Reference System) per SRID 102100 ora usa ESRI:102100 correttamente anziché .EPSG:102100 Questa correzione garantisce che i dati geospaziali vengano archiviati con l'autorità corretta per una migliore interoperabilità con altri sistemi.

Supporto CREATE OR REPLACE per le tabelle temporanee

CREATE OR REPLACE TEMP TABLE la sintassi è ora supportata, consentendo di creare o sostituire tabelle temporanee in una singola istruzione. In questo modo si elimina la necessità di eliminare e ricreare in modo esplicito le tabelle temporanee.

La cronologia delle tabelle Delta include parametri di opzione di scrittura

La cronologia della tabella Delta Lake (DESCRIBE HISTORY) ora include i flag delle opzioni di scrittura nella colonna operationParameters per le operazioni WRITE e REPLACE TABLE. Quando le opzioni seguenti sono abilitate in modo esplicito, vengono visualizzate come flag booleani nella cronologia (incluso solo quando true):

Per le operazioni WRITE e REPLACE TABLE:

  • isDynamicPartitionOverwrite: presente quando è stata usata la modalità di sovrascrittura della partizione dinamica
  • canOverwriteSchema: presente quando è stata abilitata la sovrascrittura dello schema (overwriteSchema)
  • canMergeSchema: presente quando è stata abilitata l'unione dello schema (mergeSchema)

Per REPLACE TABLE operazioni:

  • predicate: presente quando replaceWhere è stato usato
  • isV1WriterSaveAsTableOverwrite: presente quando la sostituzione è stata attivata da una .saveAsTable sovrascrittura

Nuove funzioni geospaziali

Sono ora disponibili le funzioni geospaziali seguenti:

  • st_makepoint function: restituisce un punto GEOMETRY con le coordinate indicate.
  • st_makeenvelope function: restituisce un GEOMETRY valore che rappresenta la busta allineata all'asse (rettangolo delimitatore) definita dalle coordinate dell'angolo specificate.

Supporto migliorato per il join spaziale

Il ST_DWithin predicato (distanza all'interno) è ora supportato come condizione di join per i join spaziali. Le congiunzioni di predicati sono ora idonee per i join spaziali, ad esempio condition AND st_predicate.

Profilatura dei dati nativi per le tabelle dei risultati nell'editor SQL

1 maggio 2026

È ora possibile visualizzare le statistiche di profilatura per le colonne nelle tabelle dei risultati nel nuovo editor SQL di Databricks. Selezionare le intestazioni di colonna e fare clic sull'icona barra laterale.Aprire i dettagli di selezione per visualizzare le statistiche di profilatura.

Aprile 2026

agg Funzione SQL come sinonimo di measure

30 aprile 2026

La nuova funzione di aggregazione agg è un sinonimo di measure. Utilizzare agg(measure_column) come alternativa concisa quando si interrogano le misure in una vista metrica.

La versione 2026.10 di Databricks SQL è in distribuzione nel canale Current.

23 aprile 2026

La versione 2026.10 di Databricks SQL è in fase di distribuzione nel canale Current. Vedere le funzionalità nel 2026.10.

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.

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_Difference con 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.

Misure della finestra periodo su periodo con offset

Le misure della finestra nelle viste metriche supportano un campo offset che sposta la finestra indietro o avanti lungo la dimensione order di un intervallo fisso. Usa offset per definire misure tra periodi, ad esempio anno su anno o mese su mese. Vedere Come offset sposta la cornice della finestra.

Includi o escludi la riga di ancoraggio nelle misure della finestra in trailing e leading

I valori di intervallo trailing e leading per le misure di finestra accettano un modificatore facoltativo inclusive o exclusive che controlla se la riga di ancoraggio fa parte della finestra mobile. Il valore predefinito è exclusive, che corrisponde al comportamento precedente. Vedere Includere o escludere la riga di ancoraggio.

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:

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:

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:

Funzioni scalari:

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_estimatesrid function: stima l'identificatore SRID (Spatial Reference Identifier) più proiettato per una geometria di input.
  • st_force2d funzione: converte una geografia o una geometria nella relativa rappresentazione 2D.
  • st_nrings funzione: conta il numero totale di anelli in un poligono o multipolygon, inclusi gli anelli esterni e interni.
  • st_numpoints function: 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.

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:

È 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:

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 .

Gennaio 2026