From 6999ce3afa32c186befee14fda8a2d3e433a30f6 Mon Sep 17 00:00:00 2001 From: Sergei Shtykov Date: Mon, 4 May 2020 11:42:48 +0300 Subject: [PATCH] CLICKHOUSEDOCS-441: Updated the description. --- .../aggregate-functions/combinators.md | 29 ++++++++++--------- .../aggregate-functions/combinators.md | 17 ++++++----- 2 files changed, 26 insertions(+), 20 deletions(-) diff --git a/docs/en/sql-reference/aggregate-functions/combinators.md b/docs/en/sql-reference/aggregate-functions/combinators.md index 6a62215ada1..67fe3095621 100644 --- a/docs/en/sql-reference/aggregate-functions/combinators.md +++ b/docs/en/sql-reference/aggregate-functions/combinators.md @@ -51,10 +51,11 @@ Converts an aggregate function for tables into an aggregate function for arrays ## -OrDefault {#agg-functions-combinator-ordefault} -Changes behaviour of an aggregate function. +Changes behavior of an aggregate function. If an aggregate function doesn't have input values, with this combinator it returns the default value for its return data type. Applies to the aggregate functions that can take empty input data. -`-OrDefault` can be combined with other combinators. + +`-OrDefault` can be used with other combinators. **Syntax** @@ -88,7 +89,7 @@ Result: └─────────────┴──────────────────────┘ ``` -Also `-OrDefault` can be used with a few combinators. It is useful when the aggregate function does not accept the empty input. +Also `-OrDefault` can be used with another combinators. It is useful when the aggregate function does not accept the empty input. Query: @@ -111,10 +112,11 @@ Result: ## -OrNull {#agg-functions-combinator-ornull} -Changes behaviour of an aggregate function. +Changes behavior of an aggregate function. -This combinator replaces returned value with nullable one, if the aggregate function does not have values to calculate. Works with different aggregate functions. -`-OrNull` can be combined with other combinators. +This combinator converts a result of an aggregate function to the [Nullable](../data-types/nullable.md) data type. If the aggregate function does not have values to calculate it returns [NULL](../syntax.md#null-literal). + +`-OrNull` can be used with other combinators. **Syntax** @@ -128,9 +130,10 @@ This combinator replaces returned value with nullable one, if the aggregate func **Returned values** -Returns the `Null` value of an aggregate function’s return type if there is nothing to aggregate. +- The result of the aggregate function, converted to the `Nullable` data type. +- `NULL`, if there is nothing to aggregate. -Type: [Nullable](../data_types/nullable.md). +Type: `Nullable(aggregate function return type)`. **Example** @@ -139,18 +142,18 @@ Add `-orNull` to the end of aggregate function. Query: ``` sql -SELECT sumOrNull(number) FROM numbers(10) WHERE number > 10 +SELECT sumOrNull(number), toTypeName(sumOrNull(number)) FROM numbers(10) WHERE number > 10 ``` Result: ``` text -┌─sumOrNull(number)─┐ -│ ᴺᵁᴸᴸ │ -└───────────────────┘ +┌─sumOrNull(number)─┬─toTypeName(sumOrNull(number))─┐ +│ ᴺᵁᴸᴸ │ Nullable(UInt64) │ +└───────────────────┴───────────────────────────────┘ ``` -Also `-OrNull` can be used with a few combinators. It is useful when the aggregate function does not accept the empty input. +Also `-OrNull` can be used with another combinators. It is useful when the aggregate function does not accept the empty input. Query: diff --git a/docs/ru/sql-reference/aggregate-functions/combinators.md b/docs/ru/sql-reference/aggregate-functions/combinators.md index 3fb59c47ab2..618242a6058 100644 --- a/docs/ru/sql-reference/aggregate-functions/combinators.md +++ b/docs/ru/sql-reference/aggregate-functions/combinators.md @@ -50,6 +50,7 @@ Изменяет поведение агрегатной функции. Если на вход агрегатной функции передан пустой набор данных, то с помощью комбинатора `-OrDefault` функция возвращает значение по умолчанию для соответствующего типа данных. Комбинатор применяется к агрегатным функциям, которые могут принимать пустые входные данные. + `-OrDefault` можно использовать с другими комбинаторами. **Синтаксис** @@ -109,7 +110,8 @@ FROM Изменяет поведение агрегатной функции. -Этот комбинатор заменяет возвращаемое значение на `Null`, если на вход агрегатной функции передан пустой набор данных. Комбинатор работает с различными агрегатными функциями. +Комбинатор преобразует результат агрегатной функции к типу [Nullable](../data-types/nullable.md). Если агрегатная функция не получает данных на вход, то с комбинатором она возвращает [NULL](../syntax.md#null-literal). + `-OrNull` может использоваться с другими комбинаторами. **Синтаксис** @@ -124,9 +126,10 @@ FROM **Возвращаемые значения** -Возвращает значение `Null` для соответствующего типа агрегатной функции, если агрегировать нечего. +- Результат агрегатной функции, преобразованный в тип данных `Nullable`. +- `NULL`, если у агрегатной функции нет входных данных. -Тип: [Nullable](../data_types/nullable.md). +Тип: `Nullable(aggregate function return type)`. **Пример** @@ -135,15 +138,15 @@ FROM Запрос: ``` sql -SELECT sumOrNull(number) FROM numbers(10) WHERE number > 10 +SELECT sumOrNull(number), toTypeName(sumOrNull(number)) FROM numbers(10) WHERE number > 10 ``` Результат: ``` text -┌─sumOrNull(number)─┐ -│ ᴺᵁᴸᴸ │ -└───────────────────┘ +┌─sumOrNull(number)─┬─toTypeName(sumOrNull(number))─┐ +│ ᴺᵁᴸᴸ │ Nullable(UInt64) │ +└───────────────────┴───────────────────────────────┘ ``` Также `-OrNull` может использоваться с другими комбинаторами. Это полезно, когда агрегатная функция не принимает пустые входные данные.