Frammenti di query
Spesso è più facile duplicare il lavoro precedente e modificare piuttosto che scrivere qualcosa da zero. Ciò è particolarmente vero per le istruzioni di JOIN
comuni o espressioni di CASE
complesse. Man mano che la list di query aumenta, può essere difficile ricordare quali query contengono l'istruzione necessaria. È anche possibile creare un frammento di query contenente un punto di inserimento con testo segnaposto che un utente può sostituire in fase di esecuzione.
I frammenti di query sono segmenti di query che è possibile condividere e attivare usando il completamento automatico. Usare frammenti di query per:
- Istruzioni frequenti
JOIN
- Clausole complesse come
WITH
oCASE
. - Formattazione condizionale
Ecco alcuni esempi di frammenti di codice:
--Simple snippet
WHERE fare_amount > 100
--Snippet with an insertion point for a value to be provided at runtime
WHERE fare_amount > ${1:value}
--Snippet with an insertion point for a value to be provided at runtime and containing a default value
WHERE fare_amount > ${1:100}
--Snippet with multiple insertion points
WHERE fare_amount > ${2:min_value} AND fare_amount < ${1:max_value} AND trip_distance < ${0:max_distance}
Creare frammenti di query
Usare la procedura seguente per creare frammenti di codice usando questi esempi di frammento:
Fai clic sul tuo nome utente nella barra superiore dell'area di lavoro e selectImpostazioni dall'elenco a discesa.
Fare clic sulla scheda sviluppatore.
Accanto a frammenti di query SQL, cliccare su Gestisci.
Fare clic su Crea frammento di query.
Nel campo Sostituisci, inserisci il nome del frammento. Questo nome verrà usato durante la scrittura di una query usando il frammento di codice.
Facoltativamente, immettere una descrizione.
Nel campo frammento di codice, immettere il frammento di codice.
Fare clic su Crea.
Usare un frammento di query in una query
Di seguito è riportato un esempio di query semplice con cui è possibile usare questi frammenti di query:
--Simple query
SELECT * FROM samples.nyctaxi.trips
Per utilizzare un frammento di query con questa query, seguire i passaggi seguenti:
Aprire Editor SQL.
Digitare la query nel riquadro query dell'editor SQL.
Digitare le prime 3 lettere del nome di un frammento e poi select selezionare un frammento dal completamento automatico window. È anche possibile aprire manualmente il window premendo
Option
+Space
e select un frammento di codice.Eseguire la query con la clausola
WHERE
dal frammento della query.
Uso dei punti di inserimento negli spezzoni di query
È possibile designare i punti di inserimento racchiudendo un ordine di tabulazioni intero con un singolo segno di dollaro e parentesi graffe ${}
. Un segnaposto di testo preceduto da due punti :
è facoltativo ma utile per gli utenti che non hanno familiarità con il frammento di codice. Nei frammenti di query con punti di inserimento creati in precedenza, ${1:value}
è un punto di inserimento con segnaposto e ${1:100}
è un punto di inserimento con un valore predefinito per il segnaposto che è possibile sostituire in fase di esecuzione. Quando Databricks SQL esegue il rendering del frammento di codice, il segno di dollaro $
e le parentesi graffe {}
vengono rimosse e la parola value
o l'impostazione predefinita di 100
viene evidenziata per la sostituzione.
Quando sono presenti più punti di inserimento, il cursore di inserimento si sposta al primo punto di inserimento per richiedere il valore desiderato. Quando si preme Tab
, il cursore salta al punto di inserimento successivo per il valore seguente. Quando si preme di nuovo Tab
, il carato passerà alla riga successiva del punto di inserimento fino a raggiungere il punto di inserimento finale.
Nota
Un punto di inserimento pari a zero ${0}
è sempre l'ultimo punto nell'ordine di tabulazione.
Seguire la procedura seguente per utilizzare i frammenti di query del punto di inserimento con la query:
Aprire Editor SQL.
Digita la tua query nella finestra di query dell'editor SQL.
Digitare le prime 3 lettere del nome del frammento di query e quindi select un frammento di query con il punto di inserimento senza un valore predefinito.
Il frammento di query viene aggiunto alla query e il cursore si sposta al punto di inserimento.
Immettere un valore per la clausola
WHERE
, ad esempio200
.Facoltativamente, eseguire la query con la clausola
WHERE
dal frammento di query.Ripetere i passaggi precedenti, ma select il frammento di query con il punto di inserimento usando un valore predefinito.
Ripetere i passaggi precedenti, ma applicare select al frammento di query con più punti di inserimento.
Immettere un valore per il primo punto di inserimento, passare al punto di inserimento successivo e immettere un valore, e infine passare al punto di inserimento finale e immettere un valore.