に最終更新
文字列型リテラル
説明
文字列は、単一引用符 (') または二重引用符 (") で囲まれたバイトまたは文字の列です。例:
'a string'
"another string"
エスケープ文字
文字列内では、NO_BACKSLASH_ESCAPES SQL モードが有効な場合を除き、特定の文字の並びに特別な意味があります。これらの並びは、エスケープ文字と呼ばれるバックスラッシュ () で始まります。Doris が認識するエスケープ文字を次の表に示します。
| エスケープ文字 | 意味 |
|---|---|
\0 | ASCII 文字 NUL (0x00) |
\' | 単一引用符 (') |
\" | 二重引用符 (") |
\b | バックスペース |
\n | 改行 |
\r | 復帰 |
\t | タブ |
\Z | ASCII 26 (Control+Z) |
\\ | バックスラッシュ (\) |
\% | パーセント記号 %。詳細は以下の注記を参照してください |
\_ | アンダースコア _。詳細は以下の注記を参照してください |
注記
- パターンマッチングでは通常、
%と_はワイルドカードとして解釈されますが、\%と\_を使用すると、文字どおりの%と_を検索できます。詳しくは、「パターンマッチング演算子」セクションの LIKE 演算子の説明を参照してください。\%または\_をパターンマッチング以外で使用した場合、それぞれ文字列\%と\_として評価され、%と_にはなりません。- 表にないエスケープ文字のバックスラッシュは無視されます。たとえば、
'\y'と'y'は同等です。
文字列リテラル内での引用符の使用
文字列に引用符を含める方法はいくつかあります。
- 単一引用符 (') で囲まれた文字列では、単一引用符を二つ続けて ('') 記述できます。
- 二重引用符 (") で囲まれた文字列では、二重引用符を二つ続けて (") 記述できます。
- 引用符の前にエスケープ文字 (
\) を追加します。 - 二重引用符で囲まれた文字列に単一引用符を含める場合、特別な処理は不要です。単一引用符を二つ続けたり、エスケープしたりする必要はありません。同様に、単一引用符で囲まれた文字列に二重引用符を含める場合も、特別な処理は不要です。