文字列型リテラル
説明
文字列は、単一引用符(')または二重引用符(")で囲まれたバイトまたは文字の列です。例:
'a string'
"another string"
エスケープ文字
文字列内では、NO_BACKSLASH_ESCAPES SQLモードが有効でない限り、特定のシーケンスは特別な意味を持ちます。これらのシーケンスはバックスラッシュ(\)で始まり、これはエスケープ文字として知られています。Dorisで認識されるエスケープ文字を以下の表に示します:
| Escape Character | Meaning |
|---|---|
\0 | ASCII character NUL ('X'00') |
\' | Single quote (') |
\" | Double quote (") |
\b | Backspace |
\n | Newline |
\r | Carriage return |
\t | Tab |
\Z | ASCII 26 (Control+Z) |
\\ | Backslash (\) |
\% | Percent sign %. For details, see the notes below |
\_ | Underscore _. For details, see the notes below |
注記
- パターンマッチングのコンテキストでは、
%と_は通常ワイルドカードとして解釈されますが、\%と\_のシーケンスを使用することで、%と_のリテラル文字を検索できます。詳細については、「パターンマッチング演算子」セクションのLIKE演算子の説明を参照してください。\%または\_がパターンコンテキスト外で使用された場合、これらは%と_ではなく、文字列\%と\_として計算されます。- 表に記載されていないエスケープ文字のバックスラッシュは無視されます。例えば、
'\y'と'y'は同等です。
文字列リテラルでの引用符の使用
文字列に引用符文字を含める方法はいくつかあります:
- 単一引用符(')で囲まれた文字列では、単一引用符は2つの単一引用符('')として記述できます。
- 二重引用符(")で囲まれた文字列では、二重引用符は2つの二重引用符("")として記述できます。
- 引用符文字の前にエスケープ文字(
\)を追加します。 - 二重引用符で囲まれた文字列に単一引用符を含める場合、特別な処理は必要なく、単一引用符を二重にしたりエスケープしたりする必要もありません。同様に、単一引用符で囲まれた文字列に二重引用符を含める場合、特別な処理は必要ありません。