INTEGRITY Документация

Строковые функции

длина

Использование:

length({string})

Возвращает длину строки. Эта функция совместима с UTF-8.

Примеры:

SELECT length('a string') AS s;
SELECT length(blob1) AS s FROM your_dataset;

Для обратной совместимости эта функция эквивалентна функции ClickHouse lengthUTF8 функцию, а не функцию ClickHouse length функцию.

пусто

Использование:

empty({string})

Возвращает булево значение, показывающее, была ли строка пустой. Эту операцию можно также выполнить как бинарную: {string} = ''.

Примеры:

SELECT empty('a string') AS b;
SELECT empty(blob1) AS b FROM your_dataset;

Для обратной совместимости эту функцию можно также вызвать с помощью empty(<string>).

lower

Использование:

lower({string})

Возвращает строку, преобразованную в нижний регистр. Эта функция НЕ совместима с Unicode, см. lowerUTF8 для этого.

Примеры:

SELECT lower('STRING TO DOWNCASE') AS s;
SELECT lower(blob1) AS s FROM your_dataset;

lowerUTF8 Новое

Использование:

lowerUTF8({string})

Возвращает строку, преобразованную в нижний регистр. Эта функция совместима с Unicode. Результат может быть неидеальным для некоторых языков, поэтому пользователям со строгими требованиями следует выполнять эту операцию в собственном коде.

Примеры:

SELECT lowerUTF8('STRING TO DOWNCASE') AS s;
SELECT lowerUTF8(blob1) AS s FROM your_dataset;

Для обратной совместимости эту функцию можно также вызвать с помощью toLower({string}).

upper

Использование:

upper({string})

Возвращает строку, преобразованную в верхний регистр. Эта функция НЕ совместима с Unicode, см. upperUTF8 для этого.

Примеры:

SELECT upper('string to uppercase') AS s;
SELECT upper(blob1) AS s FROM your_dataset;

upperUTF8 Новое

Использование:

upperUTF8({string})

Возвращает строку, преобразованную в верхний регистр. Эта функция совместима с Unicode. Результаты могут быть неидеальными для некоторых языков, поэтому пользователям со строгими требованиями следует выполнять эту операцию в собственном коде.

Примеры:

SELECT upperUTF8('string to uppercase') AS s;
SELECT upperUTF8(blob1) AS s FROM your_dataset;

Для обратной совместимости эту функцию можно также вызвать с помощью toUpper({string}).

startsWith

Использование:

startsWith({string}, {string})

Возвращает булево значение, указывающее, начинается ли первая строка со второй строки.

Примеры:

SELECT startsWith('prefix ...', 'prefix') AS b;
SELECT startsWith(blob1, 'prefix') AS b FROM your_dataset;

endsWith

Использование:

endsWith({string}, {string})

Возвращает булево значение, указывающее, заканчивается ли первая строка второй строкой.

Примеры:

SELECT endsWith('prefix suffix', 'suffix') AS b;
SELECT endsWith(blob1, 'suffix') AS b FROM your_dataset;

position

Использование:

position({needle:string} IN {haystack:string})

Возвращает позицию одной строки, needle, в другом haystack. В SQL индексы обычно нумеруются с 1. Это значит, что функция position возвращает 1 , если искомая строка находится в начале исходной строки. Возвращается только 0 , если строка не найдена.

Примеры:

SELECT position(':' IN 'hello: world') AS p;
SELECT position(':' IN blob1) AS p FROM your_dataset;

подстрока

Использование:

substring({string}, {offset:integer}[. {length:integer}])

Извлекает часть строки, начиная с кодовой точки Unicode, указанной параметром offset, и возвращает количество кодовых точек, заданное параметром length. Как уже упоминалось, в SQL индексы обычно нумеруются с 1. Это означает, что значение offset, передаваемое в substring, должно быть не менее 1.

Примеры:

SELECT substring('hello world', 6) AS s;
SELECT substring('hello: world', 1, position(':' IN 'hello: world')-1) AS s;

format

Использование:

format({string}[, ...])

Эта функция поддерживает форматирование строк, целых чисел, чисел с плавающей точкой, дат и времени, интервалов и так далее, кроме NULL. Эта функция не поддерживает литерал { и } символов в строке формата.

Примеры:

SELECT format('blob1: {}', blob1) AS s FROM dataset;

formatDateTime функция также может быть полезна.

extract

Использование:

extract(<time unit> from <datetime>)

extract возвращает целое количество единиц времени из даты и времени. Поддерживает YEAR, MONTH, DAY, HOUR, MINUTE и SECOND.

Примеры:

-- extract the number of seconds from a timestamp (returns 15 in this example)
extract(SECOND from toDateTime('2022-06-06 11:30:15'))