Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
Typ:
Gäller för:
Databricks SQL
Databricks Runtime
Typen stöder teckensekvenser med en längd som är större eller lika med 0.
Syntax
STRING
Literaler
[r|R]'c [ ... ]' [...]
rellerRGäller för:
Databricks SQL
Databricks Runtime 10.4 LTS och senareValfritt prefix som anger en raw-literal.
cAlla tecken från Unicode-teckenuppsättningen.
Följande escape-sekvenser identifieras i vanliga strängliteraler (utan prefixet r ) och ersätts enligt följande regler:
-
\0->\u0000, unicode-tecken med koden 0; -
\b->\u0008, backspace; -
\n->\u000a, linjebyte; -
\r->\u000d, vagnretur; -
\t->\u0009, vågrät flik; -
\Z->\u001A, ersättare; -
\%->\%; -
\_->\_; -
\<other char>-><other char>, hoppa över snedstrecket och lämna kvar tecknet som det är.
Om strängen är prefixad med r finns det inget escape-tecken.
Den inbyggda sorteringen av en STRING typ ärvs från kontexten där den används:
- Strängar som skapas av funktioner härleder sorteringen från funktionens indataargument.
- Inom en
CREATEellerALTERav enTABLE,VIEWellerFUNCTION, matchar den standardsorteringen standardsorteringen för detTABLE,VIEWellerFUNCTION. - I kontexten av ett toppnivå UPDATE , DELETE, INSERT, MERGE eller frågekommando är standardsorteringen
UTF8_BINARY.
För sortering som ignorerar avslutande blanksteg, använd satsen COLLATE UTF8_BINARY_RTRIM.
Mer information finns i regler för sorteringsprioritet.
Sammanlänkning av literaler
Gäller för:
Databricks Runtime 18.0 och senare
Du kan länka strängliteraler direkt utan att behöva använda en sammanlänkningsfunktion eller || operator.
Det här är praktiskt för:
- bryta långa literaler i flera rader
- kombinera strängliteraler och strängparametermarkörer där du inte kan använda uttryck, till exempel i en tabell
LOCATION,OPTIONSellerCOMMENT-sats. Till exempel en tabellLOCATION,OPTIONS, ellerCOMMENT-sats.
Kommentar
Du kan använda dubbla citattecken (") i stället för enkla citattecken (') för att avgränsa en strängliteral, men detta rekommenderas inte eftersom det inte är standard-SQL.
Varning
Vissa klientgränssnitt utför makroersättningar på strängar innan de skickas till SQL-parsern.
I en Databricks-anteckningsbok introducerar till exempel dollartecknet en $ och måste undantas med för att bevaras i en strängliteral.
Exempel
> 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