Приведённая ниже документация сгенерирована на основе системной таблицы
system.functions.CRC32
0xffffffff (реализация zlib).
Синтаксис
s— строкаString, для которой вычисляется CRC32.String
UInt32
Примеры
Пример использования
Query
Response
CRC32IEEE
s— строка, для которой вычисляется CRC32.String
UInt32
Примеры
Пример использования
Query
Response
CRC64
s— строка, для которой вычисляется CRC64.String
UInt64
Примеры
Пример использования
Query
Response
appendTrailingCharIfAbsent
c в строку s, если s непустая и не заканчивается символом c.
Синтаксис
s с добавленным символом c, если s не заканчивается на c. String
Примеры
Пример использования
Query
Response
ascii
s в виде Int32.
Синтаксис
s— Входная строка.String
s — пустая строка, результат равен 0. Если первый символ не является символом ASCII или не входит в диапазон Latin-1 Supplement UTF-16, результат не определён. Int32
Примеры
Пример использования
Query
Response
base32Decode
encoded— столбец типа String или константа.String
String
Примеры
Пример использования
Query
Response
base32Encode
plaintext— Открытый текст, который нужно закодировать.String
String или FixedString
Примеры
Пример использования
Query
Response
base58Decode
expected_size можно указать для выбора оптимизированного декодера фиксированного размера.
В настоящее время поддерживаются значения 32 и 64. Для остальных значений используется универсальный декодер.
Если выбран оптимизированный декодер, но входную строку нельзя декодировать ровно в такое количество байтов,
функция генерирует исключение (или возвращает пустую строку для tryBase58Decode).
Синтаксис
encoded— Столбец или константа типа String для декодирования.Stringexpected_size— Необязательно. Ожидаемый размер результата декодирования в байтах. Если указано 32 или 64, используется оптимизированный декодер; для остальных значений используется универсальный декодер.UInt8, UInt16, UInt32, or UInt64
String
Примеры
Пример использования
Query
Response
base58Encode
plaintext— Открытый текст, который нужно закодировать.String
String
Примеры
Пример использования
Query
Response
base64Decode
FROM_BASE64
Аргументы
encoded— столбец типа String или константа для декодирования. Если строка некорректно закодирована в Base64, генерируется исключение.String
String
Примеры
Пример использования
Query
Response
base64Encode
TO_BASE64
Аргументы
plaintext— столбец или константа с открытым текстом для декодирования.String
String
Примеры
Пример использования
Query
Response
base64URLDecode
encoded— столбец типа String или константа для кодирования. Если строка закодирована в Base64 некорректно, будет сгенерировано исключение.String
String
Примеры
Пример использования
Query
Response
base64URLEncode
plaintext— столбец или константа с открытым текстом для кодирования.String
String
Примеры
Пример использования
Query
Response
basename
expr— Строковое выражение. Обратные косые черты должны быть экранированы.String
String
Примеры
Извлечение имени файла из пути Unix
Query
Response
Query
Response
Query
Response
byteHammingDistance
mismatches
Аргументы
Возвращаемое значение
Возвращает расстояние Хэмминга между двумя строками. UInt64
Примеры
Пример использования
Query
Response
caseFoldUTF8
ffi, всё равно раскладываются, поскольку свёртка регистра Unicode сама по себе их разворачивает.
Синтаксис
str— входная строка в кодировке UTF-8.String
String
Примеры
Базовый пример case folding
Query
Response
compareSubstrings
s1— Первая строка для сравнения.Strings2— Вторая строка для сравнения.Strings1_offset— Позиция вs1(с нумерацией с нуля), с которой начинается сравнение.UInt*s2_offset— Позиция вs2(с нумерацией с нуля), с которой начинается сравнение.UInt*num_bytes— Максимальное количество байтов для сравнения в обеих строках. Еслиs1_offset(илиs2_offset) +num_bytesпревышает длину входной строки, значениеnum_bytesбудет соответственно уменьшено.UInt*
-1, еслиs1[s1_offset:s1_offset+num_bytes] <s2[s2_offset:s2_offset+num_bytes].0, еслиs1[s1_offset:s1_offset+num_bytes] =s2[s2_offset:s2_offset+num_bytes].1, еслиs1[s1_offset:s1_offset+num_bytes] >s2[s2_offset:s2_offset+num_bytes].Int8
Query
Response
concat
String или FixedString, преобразуются в строки с использованием сериализации по умолчанию.
Поскольку это снижает производительность, использовать аргументы, отличные от String/FixedString, не рекомендуется.
Синтаксис
s1, s2, ...— Любое количество значений произвольного типа.Any
NULL, функция возвращает NULL. Если аргументы отсутствуют, возвращается пустая строка. Nullable(String)
Примеры
Конкатенация строк
Query
Response
Query
Response
concatAssumeInjective
concat, но предполагается, что concat(s1, s2, ...) → sn — инъективная функция,
то есть для разных аргументов она возвращает разные результаты.
Может использоваться для оптимизации GROUP BY.
Синтаксис
s1, s2, ...— Любое количество значений произвольного типа.StringилиFixedString
NULL, функция возвращает NULL. Если аргументы не переданы, возвращается пустая строка. String
Примеры
Оптимизация GROUP BY
Query
Response
concatWithSeparator
concat_ws
Аргументы
sep— Разделитель, который будет использоваться.const Stringилиconst FixedStringexp1, exp2, ...— Выражения для объединения. Аргументы, не имеющие типStringилиFixedString, преобразуются в строки с использованием сериализации по умолчанию. Поскольку это снижает производительность, использовать аргументы не типаString/FixedStringне рекомендуется.Any
NULL, функция возвращает NULL. String
Примеры
Пример использования
Query
Response
concatWithSeparatorAssumeInjective
concatWithSeparator, но предполагает, что concatWithSeparator(sep[,exp1, exp2, ... ]) → result инъективна.
Функция называется инъективной, если она возвращает разные результаты для разных аргументов.
Может использоваться для оптимизации GROUP BY.
Синтаксис
sep— Используемый разделитель.const Stringorconst FixedStringexp1, exp2, ...— Выражения для объединения. Аргументы типа, отличного отStringилиFixedString, преобразуются в строки с использованием сериализации по умолчанию. Поскольку это снижает производительность, использовать аргументы не типаString/FixedStringне рекомендуется.StringorFixedString
String, полученную объединением аргументов. Если значение любого из аргументов равно NULL, функция возвращает NULL. String
Примеры
Пример использования
Query
Response
conv
number— Число, которое нужно преобразовать. Может быть строкой или числовым типом. -from_base— Исходное основание системы счисления (2-36). Должно быть целым числом. -to_base— Целевое основание системы счисления (2-36). Должно быть целым числом.
Query
Response
Query
Response
Query
Response
Query
Response
convertCharset
s, преобразованную из кодировки from в кодировку to.
Синтаксис
s— Входная строка.Stringfrom— Исходная кодировка символов.Stringto— Целевая кодировка символов.String
s, преобразованная из кодировки from в кодировку to. String
Примеры
Пример использования
Query
Response
damerauLevenshteinDistance
UInt64
Примеры
Пример использования
Query
Response
decodeHTMLComponent
s— строка, содержащая HTML-сущности для декодирования.String
String
Примеры
Пример использования
Query
Response
decodeXMLComponent
s— Строка, содержащая XML-сущности, которые нужно декодировать.String
String
Примеры
Пример использования
Query
Response
editDistance
levenshteinDistance
Аргументы
Возвращаемое значение
Возвращает расстояние редактирования между двумя строками. UInt64
Примеры
Пример использования
Query
Response
editDistanceUTF8
levenshteinDistanceUTF8
Аргументы
Возвращаемое значение
Возвращает расстояние редактирования между двумя строками в кодировке UTF-8. UInt64
Примеры
Пример использования
Query
Response
encodeXMLComponent
s— строка для экранирования.String
String
Примеры
Пример использования
Query
Response
endsWith
1, если s оканчивается на suffix, в противном случае 0. UInt8
Примеры
Пример использования
Query
Response
endsWithCaseInsensitive
1, если s заканчивается на регистронезависимый suffix, иначе 0. UInt8
Примеры
Пример использования
Query
Response
endsWithCaseInsensitiveUTF8
s на регистронезависимый суффикс suffix.
Предполагается, что строка содержит корректный текст в кодировке UTF-8.
Если это предположение нарушено, исключение не генерируется, а результат не определен.
Синтаксис
1, если s оканчивается на регистронезависимый suffix, иначе — 0. UInt8
Примеры
Пример использования
Query
Response
endsWithUTF8
s на suffix.
Предполагается, что строка содержит корректный текст в кодировке UTF-8.
Если это предположение нарушено, исключение не генерируется, а результат не определён.
Синтаксис
1, если s оканчивается на suffix, иначе — 0. UInt8
Примеры
Пример использования
Query
Response
extractTextFromHTML
- Удаление всех HTML/XML-тегов
- Удаление комментариев (
{/* */}) - Удаление элементов script и style вместе с их содержимым
- Обработку секций CDATA (копируются дословно)
- Корректную обработку и нормализацию пробельных символов
html—String, содержащая HTML-контент, из которого нужно извлечь текст.String
String
Примеры
Пример использования
Query
Response
firstLine
s— Входная строка.String
String
Примеры
Пример использования
Query
Response
idnaDecode
idnaEncode() и idnaDecode() не обязательно возвращает исходную строку из-за нормализации регистра.
Синтаксис
s— входная строка.String
String
Примеры
Пример использования
Query
Response
idnaEncode
Процентное декодирование, а также удаление символов табуляции, пробелов или управляющих символов не выполняются.
s— Входная строка.String
String
Примеры
Пример использования
Query
Response
initcap
Поскольку
initcap преобразует в верхний регистр только первую букву каждого слова, для слов, содержащих апострофы или заглавные буквы, возможен неожиданный результат.
Это известная особенность, и в настоящее время исправлять её не планируется.s— Входная строка.String
s, в которой первая буква каждого слова преобразуется в верхний регистр. String
Примеры
Пример использования
Query
Response
Query
Response
initcapUTF8
initcap, initcapUTF8 преобразует первую букву каждого слова в верхний регистр, а остальные — в нижний.
Предполагается, что строка содержит корректный текст в кодировке UTF-8.
Если это предположение нарушено, исключение не генерируется, а результат не определён.
Эта функция не определяет язык, поэтому, например, для турецкого языка результат может быть не совсем корректным (i/İ vs. i/I).
Если длина последовательности байтов UTF-8 различается для верхнего и нижнего регистра кодовой точки, результат для этой кодовой точки может быть некорректным.
s— Входная строка.String
s, где первая буква каждого слова приведена к верхнему регистру. String
Примеры
Пример использования
Query
Response
isValidASCII
isASCII
Аргументы
- Отсутствуют.
Query
Response
isValidUTF8
s— Строка, которую нужно проверить на корректность UTF-8.String
1, если набор байтов представляет собой корректный текст в кодировке UTF-8, в противном случае — 0. UInt8
Примеры
Пример использования
Query
Response
jaroSimilarity
Float64
Примеры
Пример использования
Query
Response
jaroWinklerSimilarity
Float64
Примеры
Пример использования
Query
Response
left
s с указанным смещением offset, отсчитываемым слева.
Синтаксис
s— Строка, из которой извлекается подстрока.StringилиFixedStringoffset— Смещение в байтах.(U)Int*
- Для положительного
offset— подстроку строкиsдлинойoffsetбайт, начиная слева. - Для отрицательного
offset— подстроку строкиsдлинойlength(s) - |offset|байт, начиная слева. - Пустую строку, если
lengthравно0.String
Query
Response
Query
Response
leftPad
length.
Синтаксис
lpad
Аргументы
string— Входная строка, которую нужно дополнить.Stringlength— Длина результирующей строки. Если значение меньше длины входной строки, входная строка усекается доlengthсимволов.(U)Int*pad_string— Необязательно. Строка, используемая для дополнения входной строки. Если не указана, входная строка дополняется пробелами.String
String
Примеры
Пример использования
Query
Response
leftPadUTF8
leftPad, который измеряет длину строки в байтах, здесь длина строки измеряется в кодовых точках.
Синтаксис
string— Входная строка, которую нужно дополнить.Stringlength— Длина результирующей строки. Если это значение меньше длины входной строки, она укорачивается доlengthсимволов.(U)Int*pad_string— Необязательно. Строка, которой дополняется входная строка. Если не указана, входная строка дополняется пробелами.String
String
Примеры
Пример использования
Query
Response
leftUTF8
s с указанным смещением offset, отсчитываемым слева.
Синтаксис
s— Строка в кодировке UTF-8, из которой вычисляется подстрока.StringилиFixedStringoffset— Количество байтов смещения.(U)Int*
- Для положительного
offset— подстрокуsдлинойoffsetбайт, начиная с левой стороны строки.\n” - Для отрицательного
offset— подстрокуsдлинойlength(s) - |offset|байт, начиная с левой стороны строки.\n” - Пустую строку, если
lengthравен 0.String
Query
Response
Query
Response
lengthUTF8
CHARACTER_LENGTH, CHAR_LENGTH
Аргументы
s— строка, содержащая корректный текст в кодировке UTF-8.String
s в кодовых точках Unicode. UInt64
Примеры
Пример использования
Query
Response
lower
lcase
Аргументы
s— Строка, которую нужно преобразовать в нижний регистр.String
s, преобразованную в нижний регистр. String
Примеры
Пример использования
Query
Response
lowerUTF8
input— Строка, которую нужно преобразовать в нижний регистр.String
String
Примеры
первый
Query
Response
naturalSortKey
NATURAL_SORT_KEY
Аргументы
s— строка, преобразуемая в ключ естественной сортировки.String
s. String
Примеры
Пример использования
Query
Response
normalizeUTF8NFC
str— входная строка в кодировке UTF-8.String
String
Примеры
Пример использования
Query
Response
normalizeUTF8NFD
str— входная строка в кодировке UTF-8.String
String
Примеры
Пример использования
Query
Response
normalizeUTF8NFKC
str— входная строка в кодировке UTF-8.String
String
Примеры
Пример использования
Query
Response
normalizeUTF8NFKCCasefold
str— входная строка в кодировке UTF-8.String
String
Примеры
Пример использования
Query
Response
normalizeUTF8NFKD
str— входная строка в кодировке UTF-8.String
String
Примеры
Пример использования
Query
Response
punycodeDecode
s— строка, закодированная в Punycode.String
String
Примеры
Пример использования
Query
Response
punycodeEncode
s— Входное значение.String
String
Примеры
Пример использования
Query
Response
regexpExtract
haystack первую подстроку, которая соответствует шаблону регулярного выражения и указанному индексу группы.
Синтаксис
REGEXP_EXTRACT, REGEXP_SUBSTR
Аргументы
haystack— String, строка, в которой ищется совпадение с шаблоном регулярного выражения.Stringpattern— String, шаблон регулярного выражения.patternможет содержать несколько групп регулярного выражения, аindexуказывает, какую именно группу нужно извлечь. Индекс0означает совпадение со всем регулярным выражением.const Stringindex— Необязательный. Неотрицательное целое число, указывающее, какую группу регулярного выражения нужно извлечь. По умолчанию используется1, еслиpatternсодержит хотя бы одну захватывающую группу, и0(всё совпадение), еслиpatternне содержит захватывающих групп.(U)Int*
String
Примеры
Пример использования
Query
Response
regexpPosition
occurrence-го вхождения pattern в haystack, начиная поиск с байтовой позиции position.
Если return_option равен 0 (по умолчанию), возвращается позиция первого байта совпадения. Если 1 — позиция первого байта после совпадения.
Если subexpression больше 0, вместо позиции всего совпадения возвращается позиция соответствующей группы захвата.
Возвращает 0, если совпадение не найдено или если запрошенная группа захвата не участвовала в совпадении.
Функция предоставляется для совместимости с regexp_instr в PostgreSQL (и также доступна под этим псевдонимом). Обратите внимание: позиции измеряются в байтах, как и в других функциях ClickHouse для работы с регулярными выражениями; в PostgreSQL regexp_instr использует символьные позиции.
Синтаксис
regexpInstr, regexp_instr
Аргументы
haystack— Строка, в которой выполняется поиск.Stringpattern— Шаблон регулярного выражения.const Stringposition— Необязательно. Позиция в байтах, начиная с 1, с которой начинается поиск. По умолчанию: 1.(U)Int*occurrence— Необязательно. Какое по счёту совпадение вернуть. По умолчанию: 1.(U)Int*return_option— Необязательно.0возвращает позицию начала совпадения,1— позицию сразу после совпадения. По умолчанию: 0.(U)Int*flags— Необязательно. Флаги регулярного выражения. Поддерживаются:i(регистронезависимый),c(с учётом регистра),m/n(многострочные якоря),s(точка соответствует символу новой строки). По умолчанию: пустая строка.const Stringsubexpression— Необязательно. Индекс группы захвата, позицию которой нужно вернуть.0означает всё совпадение. По умолчанию: 0.(U)Int*
0, если совпадение не найдено. UInt64
Примеры
Базовое использование
Query
Response
removeDiacriticsUTF8
removeAccentsUTF8
Аргументы
str— входная строка в кодировке UTF-8.String
String
Примеры
Базовое удаление диакритических знаков
Query
Response
repeat
s, повторённую n раз. Если n отрицательно, функция возвращает пустую строку. String
Примеры
Пример использования
Query
Response
reverseUTF8
s— String, содержащая корректный текст в кодировке UTF-8.String
String
Примеры
Пример использования
Query
Response
right
s с заданным смещением offset от правого края.
Синтаксис
s— Строка, из которой извлекается подстрока.StringилиFixedStringoffset— Количество байт смещения.(U)Int*
- Для положительного
offset— подстрокуsдлинойoffsetбайт, отсчитываемую от конца строки. - Для отрицательного
offset— подстрокуsдлинойlength(s) - |offset|байт, отсчитываемую от конца строки. - Пустую строку, если
lengthравно0.String
Query
Response
Query
Response
rightPad
length.
Синтаксис
rpad
Аргументы
string— Исходная строка, которую нужно дополнить.Stringlength— Длина результирующей строки. Если значение меньше длины входной строки, входная строка укорачивается доlengthсимволов.(U)Int*pad_string— Необязательно. Строка, которой дополняется исходная строка. Если не указана, исходная строка дополняется пробелами.String
String
Примеры
Пример использования
Query
Response
rightPadUTF8
rightPad, который измеряет длину строки в байтах, здесь длина строки измеряется в кодовых точках.
Синтаксис
string— Входная строка, которую нужно дополнить.Stringlength— Длина результирующей строки. Если значение меньше длины входной строки, входная строка укорачивается доlengthсимволов.(U)Int*pad_string— Необязательно. Строка, которой дополняется входная строка. Если не указана, входная строка дополняется пробелами.String
String
Примеры
Пример использования
Query
Response
rightUTF8
s с указанным offset, отсчитываемым справа.
Синтаксис
s— Строка в кодировке UTF-8, из которой извлекается подстрока.StringилиFixedStringoffset— Смещение в байтах.(U)Int*
- Для положительного
offset— подстрокуsдлинойoffsetбайт, отсчитываемую от конца строки. - Для отрицательного
offset— подстрокуsдлинойlength(s) - |offset|байт, отсчитываемую от конца строки. - Пустую строку, если
lengthравно0.String
Query
Response
Query
Response
soundex
s— Входная строка.String
String
Примеры
Пример использования
Query
Response
space
) указанное количество раз.
Синтаксис
n— Количество повторений пробела.(U)Int*
n пробелов. Если n <= 0, функция возвращает пустую строку. String
Примеры
Пример использования
Query
Response
sparseGrams
n,
для которых хеши (n-1)-грамм на границах подстроки
строго больше хешей любой (n-1)-граммы внутри неё.
Использует CRC32 в качестве хеш-функции.
Синтаксис
s— Входная строка.Stringmin_ngram_length— Необязательно. Минимальная длина извлекаемой n-граммы. Значение по умолчанию и минимально допустимое значение — 3.UInt*max_ngram_length— Необязательно. Максимальная длина извлекаемой n-граммы. Значение по умолчанию — 100. Должно быть не меньшеmin_ngram_length.UInt*min_cutoff_length— Необязательно. Если указано, возвращаются только n-граммы длиной не меньшеmin_cutoff_length. Значение по умолчанию совпадает сmin_ngram_length. Должно быть не меньшеmin_ngram_lengthи не большеmax_ngram_length.UInt*
Array(String)
Примеры
Пример использования
Query
Response
sparseGramsHashes
n,
у которых хеши (n-1)-грамм на границах подстроки
строго больше хешей любой (n-1)-граммы внутри подстроки.
Использует CRC32 в качестве хеш-функции.
Синтаксис
s— Входная строка.Stringmin_ngram_length— Необязательно. Минимальная длина извлекаемой n-граммы. Значение по умолчанию и минимально допустимое значение — 3.UInt*max_ngram_length— Необязательно. Максимальная длина извлекаемой n-граммы. Значение по умолчанию — 100. Должно быть не меньшеmin_ngram_length.UInt*min_cutoff_length— Необязательно. Если указано, возвращаются только n-граммы длиной не меньшеmin_cutoff_length. Значение по умолчанию совпадает сmin_ngram_length. Должно быть не меньшеmin_ngram_lengthи не большеmax_ngram_length.UInt*
Array(UInt32)
Примеры
Пример использования
Query
Response
sparseGramsHashesUTF8
n, для которых хеши (n-1)-грамм на границах подстроки строго больше, чем у любой (n-1)-граммы внутри подстроки.
Ожидает UTF-8 строку; в случае недопустимой последовательности UTF-8 генерирует исключение.
Использует CRC32 как хеш-функцию.
Синтаксис
s— Входная строка.Stringmin_ngram_length— Необязательно. Минимальная длина извлекаемой n-граммы. Значение по умолчанию и минимально допустимое значение — 3.UInt*max_ngram_length— Необязательно. Максимальная длина извлекаемой n-граммы. Значение по умолчанию — 100. Должно быть не меньшеmin_ngram_length.UInt*min_cutoff_length— Необязательно. Если указано, возвращаются только n-граммы длиной не меньшеmin_cutoff_length. Значение по умолчанию совпадает сmin_ngram_length. Должно быть не меньшеmin_ngram_lengthи не большеmax_ngram_length.UInt*
Array(UInt32)
Примеры
Пример использования
Query
Response
sparseGramsUTF8
n, у которых хеши (n-1)-грамм на границах подстроки строго больше, чем у любой (n-1)-граммы внутри неё.
Ожидает UTF-8 строку; генерирует исключение при недопустимой последовательности UTF-8.
Использует CRC32 в качестве хеш-функции.
Синтаксис
s— Входная строка.Stringmin_ngram_length— Необязательно. Минимальная длина извлекаемой n-граммы. Значение по умолчанию и минимально допустимое значение — 3.UInt*max_ngram_length— Необязательно. Максимальная длина извлекаемой n-граммы. Значение по умолчанию — 100. Должно быть не меньшеmin_ngram_length.UInt*min_cutoff_length— Необязательно. Если параметр указан, возвращаются только n-граммы длиной не менееmin_cutoff_length. Значение по умолчанию совпадает со значениемmin_ngram_length. Должно быть не меньшеmin_ngram_lengthи не большеmax_ngram_length.UInt*
Array(String)
Примеры
Пример использования
Query
Response
startsWith
1, если s начинается с prefix, иначе — 0. UInt8
Примеры
Пример использования
Query
Response
startsWithCaseInsensitive
s— Строка, которую нужно проверить.Stringprefix— Регистронезависимый префикс, наличие которого нужно проверить.String
1, если s начинается с prefix без учёта регистра, в противном случае — 0. UInt8
Примеры
Пример использования
Query
Response
startsWithCaseInsensitiveUTF8
s— Строка, которую нужно проверить.Stringprefix— Регистронезависимый префикс, наличие которого нужно проверить.String
1, если s начинается с регистронезависимого prefix, иначе 0. UInt8
Примеры
Пример использования
Query
Response
startsWithUTF8
s— Строка, которую нужно проверить.Stringprefix— Префикс, наличие которого нужно проверить.String
1, если s начинается с prefix, иначе — 0. UInt8
Примеры
Пример использования
Query
Response
stringBytesEntropy
s— строка для анализа.String
Float64
Примеры
Пример использования
Query
Response
stringBytesUniq
s— анализируемая строка.String
UInt16
Примеры
Пример использования
Query
Response
stringJaccardIndex
Float64
Примеры
Пример использования
Query
Response
stringJaccardIndexUTF8
stringJaccardIndex, но для строк в кодировке UTF8.
Синтаксис
s1— Первая входная строка в кодировке UTF-8.Strings2— Вторая входная строка в кодировке UTF-8.String
Float64
Примеры
Пример использования
Query
Response
substring
s, начинающуюся с указанного байтового смещения offset.
Подсчёт байтов начинается с 1 по следующей логике:
- Если
offsetравен0, возвращается пустая строка. - Если
offsetотрицательный, подстрока начинается наoffsetсимволов от конца строки, а не от её начала.
length задаёт максимальное количество байтов в возвращаемой подстроке.
Синтаксис
byteSlice, mid, substr
Аргументы
s— Строка, из которой извлекается подстрока.StringилиFixedStringилиEnumoffset— Начальная позиция подстроки вs.(U)Int*length— Необязательный параметр. Максимальная длина подстроки.(U)Int*
s длиной length байт, начиная с индекса offset. String
Примеры
Базовое использование
Query
Response
substringIndex
s до первых count вхождений разделителя delim, как в Spark или MySQL.
Синтаксис
SUBSTRING_INDEX
Аргументы
s— Строка, из которой нужно извлечь подстроку.Stringdelim— Символ-разделитель.Stringcount— Количество вхождений разделителя, которое нужно учесть перед извлечением подстроки. Еслиcountположительный, возвращается всё слева от последнего разделителя (считая слева). Еслиcountотрицательный, возвращается всё справа от последнего разделителя (считая справа).UIntилиInt
s до count-го вхождения delim. String
Примеры
Пример использования
Query
Response
substringIndexUTF8
s до count вхождений разделителя delim; функция работает с кодовыми точками Unicode.
Предполагается, что строка содержит корректный текст в кодировке UTF-8.
Если это предположение нарушено, исключение не генерируется, а результат не определён.
Синтаксис
s— Строка, из которой извлекается подстрока.Stringdelim— Символ-разделитель.Stringcount— Количество вхождений разделителя, которое нужно отсчитать перед извлечением подстроки. Еслиcountположительный, возвращается всё слева от последнего разделителя (при отсчёте слева). Еслиcountотрицательный, возвращается всё справа от последнего разделителя (при отсчёте справа).UIntилиInt
s до count-го вхождения delim. String
Примеры
Пример UTF8
Query
Response
substringUTF8
s, начинающуюся с указанной кодовой точки с индексом offset.
Отсчет кодовых точек начинается с 1 по следующей логике:
- Если
offsetравен0, возвращается пустая строка. - Если
offsetотрицательный, подстрока начинается с кодовой точки, расположенной наoffsetпозиций от конца строки, а не от начала.
length задает максимальное количество кодовых точек в возвращаемой подстроке.
Эта функция предполагает, что строка содержит корректный текст в кодировке UTF-8.
Если это предположение нарушено, исключение не сгенерируется, а результат будет неопределенным.
s— Строка, из которой извлекается подстрока.StringилиFixedStringилиEnumoffset— Начальная позиция подстроки вs.IntилиUIntlength— Максимальная длина подстроки. Необязательный параметр.IntилиUInt
s длиной length кодовых точек, начиная с кодовой точки с индексом offset. String
Примеры
Пример использования
Query
Response
toValidUTF8
� (U+FFFD).
Если обнаруживается несколько недопустимых символов подряд, они заменяются одним символом замены.
Синтаксис
s— Любая последовательность байтов, представленная объектом типа данных String.String
String
Примеры
Пример использования
Query
Response
trimBoth
trim
Аргументы
s— Обрезаемая строка.Stringtrim_characters— Необязательно. Символы, которые нужно удалить. Если не указано, удаляются стандартные пробельные символы.String
String
Примеры
Пример использования
Query
Response
trimLeft
ltrim
Аргументы
input— Строка, из которой удаляются символы.Stringtrim_characters— Необязательно. Символы, которые нужно удалить. Если не указано, удаляются распространённые пробельные символы.String
String
Примеры
Пример использования
Query
Response
trimRight
rtrim
Аргументы
s— Строка, из которой нужно удалить символы.Stringtrim_characters— Необязательные символы для удаления. Если не указаны, удаляются обычные пробельные символы.String
String
Примеры
Пример использования
Query
Response
tryBase32Decode
encoded— столбец String или константа, которую нужно декодировать. Если строка не является корректной строкой в кодировке Base32, то в случае ошибки возвращается пустая строка.String
String
Примеры
Пример использования
Query
Response
tryBase58Decode
base58Decode, но в случае ошибки возвращает пустую строку.
Синтаксис
encoded— Столбец типа String или константа. Если строка некорректно закодирована в Base58, в случае ошибки возвращается пустая строка.Stringexpected_size— Необязательно. Ожидаемый размер декодированного значения в байтах. Если указано 32 или 64, используется оптимизированный декодер; для других значений используется универсальный декодер.UInt8, UInt16, UInt32, or UInt64
String
Примеры
Пример использования
Query
Response
tryBase64Decode
base64Decode, но в случае ошибки возвращает пустую строку.
Синтаксис
encoded— столбецStringили константа для декодирования. Если строка не является корректной строкой в кодировке Base64, в случае ошибки возвращается пустая строка.String
String
Примеры
Пример использования
Query
Response
tryBase64URLDecode
base64URLDecode, но в случае ошибки возвращает пустую строку.
Синтаксис
encoded— столбец типа String или константа для декодирования. Если строка не является допустимой строкой в кодировке Base64, то в случае ошибки возвращается пустая строка.String
String
Примеры
Пример использования
Query
Response
tryIdnaEncode
s— Входная строка.String
String
Примеры
Пример использования
Query
Response
tryPunycodeDecode
punycodeDecode, но возвращает пустую строку, если передана невалидная строка, закодированная в Punycode.
Синтаксис
s— строка, закодированная в Punycode.String
String
Примеры
Пример использования
Query
Response
upper
ucase
Аргументы
s— Строка, которую нужно преобразовать в верхний регистр.String
s в верхнем регистре. String
Примеры
Пример использования
Query
Response
upperUTF8
Эта функция не определяет язык, поэтому, например, для турецкого языка результат может быть не совсем корректным (i/İ vs. i/I).
Если длина последовательности байтов UTF-8 различается для одного и того же кодового символа в верхнем и нижнем регистре (например,
ẞ и ß), результат для этого кодового символа может быть некорректным.s— строкового типа.String
String. String
Примеры
Пример использования
Query
Response