跳到主要内容

字符串类型字面量

描述

字符串是一系列字节或字符,用单引号(')或双引号(")字符括起来。例如:

'a string'
"another string"

转义字符

在字符串中,除非启用了 NO_BACKSLASH_ESCAPES SQL 模式,否则某些序列具有特殊含义。这些序列均以反斜杠(\)开头,反斜杠称为转义字符。Doris 可以识别的转义字符列到下表中

转义字符意义
\0ASCII 字符 NUL(X'00'
\'单引号('
\"双引号("
\b退格符
\n换行符
\r回车符
\t制表符
\ZASCII 26 (Control+Z)
\\反斜杠(\
\%百分号 % 。详细信息参考表格后的注意事项
\_下划线 _ 。详细信息参考表格后的注意事项

注意事项

  1. 在模式匹配的上下文中,通常会将 % 和“”解释为通配符字符,但使用\%\_ 序列可以搜索“%”和“”的字面量实例。有关详细信息,请参阅“模式匹配操作符”章节中对 LIKE 操作符的描述。如果在模式匹配的上下文之外使用 \%\_,它们会被计算为字符串 \%\_,而不是 %_
  2. 表格以外的转义字符中的反斜杠会被直接忽略。例如'\y''y'是等价的。

在字符串字面量中使用引号

在字符串中包含引号字符有几种方法:

  • 在以单引号(')括起来的字符串中,单引号可以写作两个单引号('')。
  • 在以双引号(")括起来的字符串中,双引号可以写作两个双引号("")。
  • 在引号字符前加上转义字符(\)。
  • 在以双引号括起来的字符串中包含单引号时,无需进行特殊处理,也不必将单引号加倍或转义。同样地,在以单引号括起来的字符串中包含双引号时,也无需进行特殊处理。