Abfrageausschnitte
Es ist oft einfacher, vorherige Arbeit zu duplizieren und zu ändern, als etwas von Grund auf neu zu schreiben. Dies gilt insbesondere für allgemeine JOIN
-Anweisungen oder komplexe CASE
-Ausdrücke. Wenn Die Liste der Abfragen wächst, kann es schwierig sein, sich zu merken, welche Abfragen die von Ihnen benötigten Anweisungen enthalten. Sie können auch einen Abfrageausschnitt erstellen, der eine Einfügemarke mit Platzhaltertext enthält, den ein Benutzer zur Laufzeit ersetzen kann.
Abfrageausschnitte sind Segmente von Abfragen, die Sie mithilfe der Autovervollständigung freigeben und auslösen können. Verwenden Sie Abfrageausschnitte für:
- Häufige
JOIN
-Anweisungen - Komplizierte Klauseln wie
WITH
oderCASE
. - Bedingte Formatierung
Hier sind Beispiele für Ausschnitte angegeben:
--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}
Erstellen von Abfrageausschnitten
Führen Sie die folgenden Schritte aus, um Ausschnitte mithilfe dieser Ausschnittsbeispiele zu erstellen:
Klicken Sie in der oberen Leiste im Arbeitsbereich auf Ihren Benutzernamen, und wählen Sie Einstellungen aus der Dropdownliste aus.
Klicken Sie auf die Registerkarte Entwicklertools.
Klicken Sie neben SQL-Abfrageschnipseln auf Verwalten.
Klicken Sie auf Abfrageschnipsel erstellen.
Geben Sie im Feld Ersetzen den Ausschnittsnamen ein. Sie verwenden diesen Namen beim Schreiben einer Abfrage, die den Ausschnitt verwendet.
Geben Sie optional eine Beschreibung ein.
Geben Sie im Feld Ausschnitt den Ausschnitt ein.
Klicken Sie auf Erstellen.
Verwenden eines Abfrageausschnitts in einer Abfrage
Hier ist ein Beispiel für eine einfache Abfrage, mit der Sie diese Abfrageausschnitte verwenden können:
--Simple query
SELECT * FROM samples.nyctaxi.trips
Führen Sie die folgenden Schritte aus, um einen Abfrageausschnitt mit dieser Abfrage zu verwenden:
Öffnen Sie den SQL-Editor.
Geben Sie Ihre Abfrage in den Abfragebereich des SQL-Editors ein.
Geben Sie die ersten drei Buchstaben des Ausschnittnamens ein, und wählen Sie dann einen Ausschnitt aus dem AutoVervollständigen-Fenster aus. Sie können das Fenster auch manuell öffnen, indem Sie einen
Option
+Space
drücken und einen Ausschnitt auswählen.Führen Sie die Abfrage mit der
WHERE
-Klausel aus dem Abfrageausschnitt aus.
Arbeiten mit Einfügemarken in Abfrageausschnitten
Sie können Einfügepunkte festlegen, indem Sie eine ganzzahlige Aktivierreihenfolge mit einem einzelnen Dollarzeichen und geschweiften Klammern ${}
umschließen. Ein Textplatzhalter, dem ein Doppelpunkt :
vorangestellt ist, ist optional, aber nützlich für Benutzer, die mit Ihrem Ausschnitt nicht vertraut sind. In den zuvor erstellten Abfrageausschnitten mit Einfügemarken ist ${1:value}
eine Einfügemarke mit Platzhalter und ${1:100}
eine Einfügemarke mit einem Standardwert für den Platzhalter, den Sie zur Laufzeit überschreiben können. Wenn Databricks SQL den Ausschnitt rendert, werden das Dollarzeichen $
und geschweifte Klammern {}
entfernt, und das Wort value
oder der Standardwert 100
wird zum Ersetzen hervorgehoben.
Wenn mehrere Einfügemarken vorhanden sind, springt der Texteinfügediamant zur ersten Einfügemarke, um zur Eingabe des gewünschten Werts aufzufordern. Wenn Sie Tab
drücken, springt der Diamant zur nächsten Einfügemarke für den nächsten Wert. Wenn Sie erneut Tab
drücken, springt der Diamant zur nächsten Einfügemarke, bis er die letzte Einfügemarke erreicht.
Hinweis
Eine Einfügemarke von Null ${0}
ist immer der letzte Punkt in der Aktivierreihenfolge.
Führen Sie die folgenden Schritte aus, um die Einfügemarken-Abfrageausschnitte mit der Abfrage zu verwenden:
Öffnen Sie den SQL-Editor.
Geben Sie Ihre Abfrage in den Abfragebereich des SQL-Editors ein.
Geben Sie die ersten drei Buchstaben des Namens Ihres Abfrageausschnitts ein und wählen Sie dann einen Abfrageausschnitt mit der Einfügemarke ohne Standardwert aus.
Der Abfrageausschnitt wird der Abfrage hinzugefügt, und der Texteinfügediamant springt zur Einfügemarke.
Geben Sie einen Wert für die
WHERE
-Klausel ein, z. B.200
.Führen Sie optional die Abfrage mit der
WHERE
-Klausel aus dem Abfrageausschnitt aus.Wiederholen Sie die vorherigen Schritte, aber wählen Sie den Abfrageausschnitt mit der Einfügemarke mit einem Standardwert aus.
Wiederholen Sie die vorherigen Schritte, wählen Sie aber den Abfrageausschnitt mit mehreren Einfügemarken aus.
Geben Sie einen Wert für die erste Einfügemarke ein, wechseln Sie zur nächsten Einfügemarke, und geben Sie einen Wert ein, und drücken Sie dann die TAB-TASTE bis zur endgültigen Einfügemarke, und geben Sie einen Wert ein.