STRING 类型

适用于:勾选“是” Databricks SQL 勾选“是” Databricks Runtime

类型支持长度大于或等于 0 的所有字符序列。

语法

STRING

文本

[r|R]'c [ ... ]'
  • rR

    适用于: 勾选“是” Databricks SQL 勾选“是” Databricks Runtime 10.4 LTS 及更高版本

    表示原始文本的可选前缀。

  • c

    Unicode 字符集中的任意字符。

以下转义序列会在常规字符串文本(无 r 前缀)中被识别,并根据以下规则替换:

  • \0 ->\u0000,具有代码 0 的 unicode 字符;
  • \b ->\u0008,退格键;
  • \n ->\u000a,换行符;
  • \r ->\u000d,回车符;
  • \t ->\u0009,水平制表符;
  • \Z ->\u001A,替换;
  • \% ->\%
  • \_ ->\_
  • \<other char> -><other char>,跳过斜杠并保留字符原样。

如果字符串具有前缀 r,则没有转义字符。

注意

虽然可以使用双引号 (") 而不是单引号 (') 来分隔字符串文本,但不建议这样做,因为这不是标准 SQL。

警告

某些客户端接口在将字符串发送到 SQL 分析器之前会对字符串执行宏替换。 例如,在 Databricks 笔记本中,$(美元)符号引入了一个小组件,并且需要使用 \$ 进行转义以在字符串文本中保留。

示例

> SELECT 'Spark';
  Spark

> SELECT CAST(5 AS STRING);
  5

> SELECT 'O\'Connell'
  O'Connell

> SELECT 'Some\nText'
  Some
  Text

> SELECT r'Some\nText'
  Some\nText

> SELECT '서울시'
  서울시

> SELECT ''

> SELECT '\\'
  \

> SELECT r'\\'
  \\

-- From a notbook cell (without a widget 'e' being defined)
> SELECT 'Hou$e', 'Hou\$e', r'Hou$e', r'Hou\$e'
  Hou  Hou$e  Hou  Hou$e