Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse 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