適用対象: Databricks SQL
Databricks Runtime
この型は、0 以上の任意の長さの文字シーケンスをサポートします。
構文
STRING
リテラル
[r|R]'c [ ... ]'
r
またはR
適用対象:
Databricks SQL
Databricks Runtime 10.4 LTS 以降
未加工のリテラルを示す省略可能なプレフィックス。
c
Unicode 文字セットの任意の文字。
次のエスケープ シーケンスは、通常の文字列リテラル (r
プレフィックスなし) で認識され、以下の規則に従って置き換えられます。
-
\0
->\u0000
、コード 0 の Unicode 文字。 -
\b
->\u0008
、バックスペース。 -
\n
->\u000a
、改行。 -
\r
->\u000d
、復帰。 -
\t
->\u0009
、水平タブ。 -
\Z
->\u001A
、置換。 -
\%
->\%
; -
\_
->\_
; -
\<other char>
-><other char>
、スラッシュをスキップし、文字はそのままにしておきます。
文字列の先頭に r
のプレフィックスがない場合、エスケープ文字はありません。
STRING
型の固有の照合順序は、それが使用されるコンテキストから継承されます。
- 関数によって生成される文字列は、関数の入力引数から照合順序を派生させます。
-
CREATE
、ALTER
、またはTABLE
のVIEW
またはFUNCTION
内では、既定の照合順序は、そのTABLE
、VIEW
、またはFUNCTION
の既定の照合順序と一致します。 - 最上位レベルの UPDATE 、 DELETE、 INSERT、 MERGE 、または クエリ ステートメント のコンテキスト内では、既定の照合順序は
UTF8_BINARY
。
末尾のスペースを無視する照合順序の場合は、COLLATE UTF8_BINARY_RTRIM
句を使用します。
詳細については、照合順序の優先規則に関する記事を参照してください。
注
単一引用符 ("
) の代わりに二重引用符 ('
) を使用して文字列リテラルを区切ることは可能ですが、これは標準的な SQL ではないため推奨されません。
警告
一部のクライアント インターフェイスは、SQL パーサーへの送信前に文字列に対してマクロ置換を実行します。
たとえば、Databricks ノートブックにおいて $
(ドル) 記号はウィジェットを導入するので、文字列リテラル内に保持するために \$
を使用してエスケープする必要があります。
例
> 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