字面量

字面量代表内置数据类型的常量值。某些数据类型可以使用字面量表示,但并非全部数据类型都是如此。

字符串字面量

字符串字面量必须用英文单引号 ( ') 或英文双引号 ( ") 括起来

带英文引号的字面量

字面量 用法示例 注释
带英文引号的字符串
  • "abc"
  • "it's"
  • 'it\'s'
  • 'Title: "Boy"'
  • 用英文单引号 ( ' ) 括起的字符串可以包含未转义的英文双引号 ( " ),反之亦然。
  • 反斜杠 ( \ ) 可引入转义序列。请参阅下面的“转义序列”表。
  • 带英文引号的字符串不能包含换行符,即使前面加了反斜杠 ( \ ) 也不行。
原始字符串
  • R"abc+"
  • r'f\(abc,(.\*),def\)'
  • 具有原始字符串字面量前缀( r R )且带英文引号的字面量会被解释为原始/正则表达式字符串。
  • 反斜杠字符 ( \ ) 不充当转义字符。如果字符串字面量内出现反斜杠后跟另一个字符的形式,则这两个字符都将保留。
  • 原始字符串不能以奇数个反斜杠结尾。
  • 原始字符串对于构造正则表达式很有用。

字符串字面量的转义序列

下表列出了可在字符串字面量中代表非字母数字字符的所有有效转义序列。此表未列出的任何序列都会引发错误。

转义序列 说明
\a Bell
\b 退格键
\f 换页符
\n 换行
\r 回车符
\t 标签页
\v 垂直制表符
\\ 反斜杠 ( \ )
\? 问号 ( ? )
\" 英文双引号 ( " )
\' 单引号 ( ' )
\\` 英文反引号 ( \` )
\ooo 由 3 位数字(介于 0 到 7 范围内)组成的八进制转义字符。解码为单个 Unicode 字符(字符串字面量形式)或字节(字节字面量形式)。
\xhh \Xhh 由 2 个十六进制数字(0-9、A-F 或 a-f)组成的十六进制转义字符。解码为单个 Unicode 字符(字符串字面量形式)或字节(字节字面量形式)。示例:
  • '\x41' == 'A'
  • '\x41B' 'AB'
  • '\x4' 是错误
\uhhhh Unicode 转义字符,包含小写“u”和 4 个十六进制数字。仅在字符串字面量或标识符中有效。

请注意,系统不允许使用 D800-DFFF 范围内的值,因为这些是代理 Unicode 值。
\Uhhhhhhhh Unicode 转义字符,包含大写“U”和 8 个十六进制数字。仅在字符串字面量或标识符中有效。

不允许范围 D800-DFFF 内的值,因为这些是替代用 unicode 值。此外,不允许大于 10FFFF 的值。

日期字面量

如需在计算字段中使用日期和时间字面量值,您可以在值前面添加相应的标记:

字面量 规范日期格式 用法示例
日期 YYYY-[M]M-[D]D DATE '2021-4-1'
日期和时间 YYYY-[M]M-[D]D [[H]H:[M]M:[S]S] DATETIME '2021-5-29 23:59:59'

数字字面量

使用不带引号的整数或浮点值输入数字字面量。例如:

字面量 示例 用法示例
整数 1、-1、0
  • 2 + 2
  • CASE WHEN Cost > 100 THEN...
浮点 1.23、-1.2345
  • SQRT(3.14)
  • FLOOR(-42.123)

布尔字面量

在求值布尔表达式时,请使用字面量值 truefalse。例如:

IF( Boolean field = true, "yes","no")

IF( Boolean field = false, "no","yes")
IF( Boolean field, "yes","no")

IF(not Boolean field, "yes","no")