Список функций, принимаемых в выражении метрики
Редактор метрик передает выражения напрямую в ClickHouse.
Ниже приведен полный список функций ClickHouse, которые разрешено использовать в выражениях метрик Webim.
Использование функций, не входящих в этот список, не поддерживается.
Описание работы функций, их аргументов и примеры см. в официальной документации ClickHouse.
Агрегатные функции
-
avg -
count -
max -
min -
sum -
uniq
Арифметические функции
-
abs -
divide -
divideDecimal -
gcd -
intDiv -
intDivOrZero -
max2 -
min2 -
minus -
modulo -
moduloOrZero -
multiply -
multiplyDecimal -
negate -
plus -
positiveModulo
Функции округления
-
floor -
round -
roundAge -
roundBankers -
roundDown -
roundDuration -
roundToExp2
Функции сравнения
-
equals -
greater -
greaterOrEquals -
less -
lessOrEquals -
notEquals
Условные функции
-
greatest -
if -
least -
multiIf
Функции преобразования типов
-
accurateCast -
accurateCastOrDefault -
accurateCastOrNull -
CAST -
dateTime64ToSnowflake -
dateTimeToSnowflake -
formatRow -
formatRowNoNewline -
parseDateTime -
parseDateTimeOrNull -
parseDateTimeOrZero -
parseDateTimeBestEffort -
parseDateTimeBestEffortOrNull -
parseDateTimeBestEffortOrZero -
parseDateTime64BestEffort -
parseDateTime64BestEffortOrNull -
parseDateTime64BestEffortOrZero -
parseDateTime64BestEffortUS -
parseDateTime64BestEffortUSOrNull -
parseDateTime64BestEffortUSOrZero -
parseDateTimeInJodaSyntax -
parseDateTimeInJodaSyntaxOrNull -
parseDateTimeInJodaSyntaxOrZero -
reinterpret -
reinterpretAsDate -
reinterpretAsDateTime -
reinterpretAsFixedString -
reinterpretAsFloat -
reinterpretAsInt -
reinterpretAsString -
reinterpretAsUInt -
reinterpretAsUUID -
second -
snowflakeToDateTime -
snowflakeToDateTime64 -
toDate -
toDateOrDefault -
toDateOrNull -
toDateOrZero -
toDate32 -
toDate32OrDefault -
toDate32OrNull -
toDate32OrZero -
toDateTime -
toDateTimeOrDefault -
toDateTimeOrNull -
toDateTimeOrZero -
toDateTime64 -
toDateTime64OrDefault -
toDateTime64OrNull -
toDateTime64OrZero -
toDecimal -
toDecimalString -
toFixedString -
toFloat -
toInt -
toInterval -
toLowCardinality -
toString -
toStringCutToZero -
toUInt -
toUnixTimestamp64Micro -
toUnixTimestamp64Milli -
toUnixTimestamp64Nano
Функции для работы с Nullable-аргументами
-
assumeNotNull -
coalesce -
ifNull -
isNotNull -
isNull -
isZeroOrNull -
nullIf -
toNullable
Функции для работы с датами и временем
-
addDays -
addHours -
addMinutes -
addMonths -
addQuarters -
addSeconds -
addWeeks -
addYears -
age -
date_add -
date_diff -
datediff -
date_sub -
date_trunc -
dateName -
formatDateTime -
formatDateTimeInJodaSyntax -
fromModifiedJulianDay -
fromModifiedJulianDayOrNull -
fromUnixTimestamp -
fromUnixTimestampInJodaSyntax -
fromUnixTimestamp64Micro -
fromUnixTimestamp64Milli -
fromUnixTimestamp64Nano -
fromUTCTimestamp -
makeDate -
makeDate32 -
makeDateTime -
makeDateTime64 -
monthName -
now -
now64 -
nowInBlock -
serverTimeZone -
subtractYears -
subtractQuarters -
subtractMonths -
subtractWeeks -
subtractDays -
subtractHours -
subtractMinutes -
subtractSeconds -
timeSlot -
timeSlots -
timestamp_add -
timestamp_sub -
timeZone -
timeZoneOf -
timeZoneOffset -
today -
toDayOfMonth -
toDayOfWeek -
toDayOfYear -
toDaysSinceYearZero -
toHour -
toISOWeek -
toISOYear -
toLastDayOfMonth -
toLastDayOfWeek -
toMinute -
toModifiedJulianDay -
toModifiedJulianDayOrNull -
toMonday -
toMonth -
toQuarter -
toRelativeDayNum -
toRelativeHourNum -
toRelativeMinuteNum -
toRelativeMonthNum -
toRelativeQuarterNum -
toRelativeSecondNum -
toRelativeWeekNum -
toRelativeYearNum -
toSecond -
toStartOfDay -
toStartOfFifteenMinutes -
toStartOfFiveMinutes -
toStartOfHour -
toStartOfInterval -
toStartOfISOYear -
toStartOfMinute -
toStartOfMonth -
toStartOfQuarter -
toStartOfSecond -
toStartOfTenMinutes -
toStartOfWeek -
toStartOfYear -
toTime -
toTimezone -
toUnixTimestamp -
toUTCTimestamp -
toWeek -
toYear -
toYearWeek -
toYYYYMM -
toYYYYMMDD -
toYYYYMMDDhhmmss -
yesterday
Функции для работы с массивами
-
array -
arrayCompact -
arrayCount -
arrayDistinct -
arrayElement -
arrayFlatten -
arraySort -
countEqual -
empty -
groupArrayArray -
has -
hasAll -
hasAny -
hasSubstr -
indexOf -
length -
notEmpty -
range -
reverse
Функции для работы со строками
-
appendTrailingCharIfAbsent -
concat -
concatAssumeInjective -
concatWithSeparator -
concatWithSeparatorAssumeInjective -
empty -
endsWith -
endsWithUTF8 -
isValidUTF8 -
leftPad -
leftPadUTF8 -
length -
lengthUTF8 -
lower -
lowerUTF8 -
notEmpty -
repeat -
reverse -
reverseUTF8 -
rightPad -
rightPadUTF8 -
space -
startsWith -
startsWithUTF8 -
substring -
substringUTF8 -
substringIndex -
substringIndexUTF8 -
toValidUTF8 -
trim -
trimBoth -
trimLeft -
trimRight -
upper -
upperUTF8
Функции поиска в строках
-
countMatches -
countSubstrings -
extract -
extractAll -
extractAllGroupsHorizontal -
extractAllGroupsVertical -
hasSubsequence -
hasSubsequenceCaseInsensitive -
hasSubsequenceUTF8 -
hasSubsequenceCaseInsensitiveUTF8 -
ilike -
like -
multiFuzzyMatchAllIndices -
multiFuzzyMatchAny -
multiFuzzyMatchAnyIndex -
multiMatchAllIndices -
multiMatchAny -
multiMatchAnyIndex -
multiSearchAllPositions -
multiSearchAllPositionsUTF8 -
multiSearchAny -
multiSearchFirstIndex -
multiSearchFirstPosition -
ngramDistance -
ngramSearch -
notILike -
notLike -
position -
positionCaseInsensitive -
positionCaseInsensitiveUTF8 -
regexpExtract
Функции разбиения и слияния строк и массивов
-
alphaTokens -
arrayStringConcat -
extractAllGroups -
ngrams -
splitByChar -
splitByNonAlpha -
splitByRegexp -
splitByString -
splitByWhitespace
Функции поиска и замены в строках
-
regexpQuoteMeta -
replaceAll -
replaceOne -
replaceRegexpOne -
replaceRegexpAll -
tokens
Статистические функции
-
approxdistinct -
format -
notEmpty
Прочие функции
-
greatest -
least