Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:
Databricks SQL
Databricks Runtime
Der Typ unterstützt Zeichensequenzen beliebiger Länge größer oder gleich 0.
Syntax
STRING
Literale
[r|R]'c [ ... ]' [...]
roderRGilt für:
Databricks SQL
Databricks Runtime 10.4 LTS und höherOptionales Präfix, das ein unformatiertes Literal angibt.
cBeliebiges Zeichen aus dem Unicode-Zeichensatz.
Die folgenden Escapesequenzen werden in regulären Zeichenfolgenliteralen (ohne das Präfix r) erkannt und gemäß den folgenden Regeln ersetzt:
-
\0->\u0000, Unicode-Zeichen mit Code 0 -
\b->\u0008, Rücktaste -
\n->\u000a, Zeilenvorschub -
\r->\u000d, Wagenrücklauf -
\t->\u0009, horizontaler Tabstopp -
\Z->\u001A, Ersetzung -
\%->\%; -
\_->\_; -
\<other char>-><other char>, Schrägstrich überspringen und Zeichen unverändert lassen
Wenn die Zeichenfolge mit r präfixiert ist, gibt es kein Escape-Zeichen.
Die inhärente Sortierung eines STRING Typs wird vom Kontext geerbt, in dem er verwendet wird:
- Von Funktionen erzeugte Zeichenfolgen leiten die Sortierung von den Eingabeargumenten der Funktion ab.
- Innerhalb eines
CREATEoder einesALTERbei einemTABLE,VIEWoderFUNCTIONentspricht die Standardsortierung der Standardsortierung des betreffendenTABLE,VIEWoderFUNCTION. - Im Kontext einer obersten Ebene UPDATE, DELETE, INSERT, MERGE oder Abfrage-Anweisung ist
UTF8_BINARYdie Standardsortierung.
Verwenden Sie für die Sortierung, die nachfolgende Leerzeichen ignoriert, die COLLATE UTF8_BINARY_RTRIM-Klausel.
Weitere Informationen finden Sie in den Sortierreihenfolgeregeln.
Verketten von Literalen
Gilt für:
Databricks Runtime 18.0 und höher
Sie können Zeichenfolgen direkt verketten, ohne eine Verkettungsfunktion oder || Operatoren verwenden zu müssen.
Dies ist praktisch für:
- Aufteilen langer Literale in mehrere Zeilen
- Kombinieren Sie Zeichenfolgenliterale und Zeichenfolgenparametermarker, bei denen Sie keine Ausdrücke verwenden können, z. B. in einer Tabelle
LOCATION,OPTIONSoderCOMMENT-Klausel. Beispiel: eine TabelleLOCATION,OPTIONSoderCOMMENTeine Klausel.
Hinweis
Sie können zwar doppelte Anführungszeichen (") anstelle einzelner Anführungszeichen (') verwenden, um ein Zeichenfolgenliteral zu trennen, davon wird jedoch abgeraten, da es sich nicht um Standard-SQL handelt.
Warnung
Einige Clientschnittstellen führen Makroersetzungen für Zeichenfolgen durch, bevor diese an den SQL-Parser gesendet werden.
In einem Databricks-Notebook führt beispielsweise das $-Zeichen (Dollar) ein Widget ein und muss mit dem Escapezeichen \$ versehen werden, um in einem Zeichenfolgenliteral erhalten zu bleiben.
Beispiele
> SELECT 'Spark';
Spark
> SELECT CAST(5 AS STRING);
5
> SELECT 'O\'Connell'
O'Connell
> SELECT 'Some\nText'
Some
Text
> SELECT r'Some\nText'
Some\nText
> SELECT '서울시'
서울시
> SELECT ''
> SELECT '\\'
\
> SELECT r'\\'
\\
-- From a notbook cell (without a widget 'e' being defined)
> SELECT 'Hou$e', 'Hou\$e', r'Hou$e', r'Hou\$e'
Hou Hou$e Hou Hou$e
> SELECT COLLATION('hello');
UTF8_BINARY
> CREATE TEMPORARY VIEW v DEFAULT COLLATION UNICODE_CI
AS SELECT 'hello' AS c1;
> SELECT COLLATION FOR(c1) FROM v;
UNICODE_CI
> EXECUTE IMMEDIATE 'SELECT \'Hello \' :loc \'!\'' USING 'world' AS loc;
Hello World!
> EXECUTE IMMEDIATE
'SELECT '
'1 AS one,'
'2 AS two';
1 2