Перейти к содержимому
Последнее обновление

Строковый литерал

Описание​

Строка представляет собой последовательность байтов или символов, заключённую в одинарные кавычки (') или двойные кавычки ("). Например:

'a string'
"another string"

Экранирующие символы​

В строках некоторые последовательности имеют особое значение, если не включён режим SQL NO_BACKSLASH_ESCAPES. Эти последовательности начинаются с обратной косой черты (), которая называется экранирующим символом. Экранирующие последовательности, распознаваемые Doris, перечислены в таблице ниже:

Экранирующий символЗначение
\0Символ ASCII NUL (0x00)
\'Одинарная кавычка (')
\"Двойная кавычка (")
\bВозврат на одну позицию
\nПеревод строки
\rВозврат каретки
\tТабуляция
\ZASCII 26 (Control+Z)
\\Обратная косая черта (\)
\%Знак процента %. Подробнее см. примечания ниже
\_Знак подчёркивания _. Подробнее см. примечания ниже

Примечания

  1. При сопоставлении с шаблоном % и _ обычно интерпретируются как подстановочные знаки, но последовательности \% и \_ позволяют искать буквальные вхождения % и _. Дополнительную информацию см. в описании оператора LIKE в разделе «Операторы сопоставления с шаблоном». Если \% или \_ используются вне контекста шаблонов, они интерпретируются как строки \% и \_, а не как % и _.
  2. Обратные косые черты в экранирующих последовательностях, не перечисленных в таблице, игнорируются. Например, '\y' и 'y' эквивалентны.

Использование кавычек в строковых литералах​

Существует несколько способов включить кавычки в строки:

  • В строке, заключённой в одинарные кавычки ('), одинарную кавычку можно записать как две одинарные кавычки ('').
  • В строке, заключённой в двойные кавычки ("), двойную кавычку можно записать как две двойные кавычки (").
  • Добавьте экранирующий символ (\) перед кавычкой.
  • Чтобы включить одинарную кавычку в строку, заключённую в двойные кавычки, специальная обработка не требуется: одинарную кавычку не нужно ни удваивать, ни экранировать. Аналогично, чтобы включить двойную кавычку в строку, заключённую в одинарные кавычки, специальная обработка не требуется.