メインコンテンツまでスキップ
に最終更新

文字列型リテラル

説明​

文字列は、単一引用符 (') または二重引用符 (") で囲まれたバイトまたは文字の列です。例:

'a string'
"another string"

エスケープ文字​

文字列内では、NO_BACKSLASH_ESCAPES SQL モードが有効な場合を除き、特定の文字の並びに特別な意味があります。これらの並びは、エスケープ文字と呼ばれるバックスラッシュ () で始まります。Doris が認識するエスケープ文字を次の表に示します。

エスケープ文字意味
\0ASCII 文字 NUL (0x00)
\'単一引用符 (')
\"二重引用符 (")
\bバックスペース
\n改行
\r復帰
\tタブ
\ZASCII 26 (Control+Z)
\\バックスラッシュ (\)
\%パーセント記号 %。詳細は以下の注記を参照してください
\_アンダースコア _。詳細は以下の注記を参照してください

注記

  1. パターンマッチングでは通常、% と _ はワイルドカードとして解釈されますが、\% と \_ を使用すると、文字どおりの % と _ を検索できます。詳しくは、「パターンマッチング演算子」セクションの LIKE 演算子の説明を参照してください。\% または \_ をパターンマッチング以外で使用した場合、それぞれ文字列 \% と \_ として評価され、% と _ にはなりません。
  2. 表にないエスケープ文字のバックスラッシュは無視されます。たとえば、'\y' と 'y' は同等です。

文字列リテラル内での引用符の使用​

文字列に引用符を含める方法はいくつかあります。

  • 単一引用符 (') で囲まれた文字列では、単一引用符を二つ続けて ('') 記述できます。
  • 二重引用符 (") で囲まれた文字列では、二重引用符を二つ続けて (") 記述できます。
  • 引用符の前にエスケープ文字 (\) を追加します。
  • 二重引用符で囲まれた文字列に単一引用符を含める場合、特別な処理は不要です。単一引用符を二つ続けたり、エスケープしたりする必要はありません。同様に、単一引用符で囲まれた文字列に二重引用符を含める場合も、特別な処理は不要です。