CLICKHOUSEDOCS-441: Updated the description.

This commit is contained in:
Sergei Shtykov 2020-05-04 11:42:48 +03:00
parent 0bbe1f97ab
commit 6999ce3afa
2 changed files with 26 additions and 20 deletions

View File

@ -51,10 +51,11 @@ Converts an aggregate function for tables into an aggregate function for arrays
## -OrDefault {#agg-functions-combinator-ordefault} ## -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. 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** **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: Query:
@ -111,10 +112,11 @@ Result:
## -OrNull {#agg-functions-combinator-ornull} ## -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. 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 combined with other combinators.
`-OrNull` can be used with other combinators.
**Syntax** **Syntax**
@ -128,9 +130,10 @@ This combinator replaces returned value with nullable one, if the aggregate func
**Returned values** **Returned values**
Returns the `Null` value of an aggregate functions 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** **Example**
@ -139,18 +142,18 @@ Add `-orNull` to the end of aggregate function.
Query: Query:
``` sql ``` sql
SELECT sumOrNull(number) FROM numbers(10) WHERE number > 10 SELECT sumOrNull(number), toTypeName(sumOrNull(number)) FROM numbers(10) WHERE number > 10
``` ```
Result: Result:
``` text ``` 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: Query:

View File

@ -50,6 +50,7 @@
Изменяет поведение агрегатной функции. Изменяет поведение агрегатной функции.
Если на вход агрегатной функции передан пустой набор данных, то с помощью комбинатора `-OrDefault` функция возвращает значение по умолчанию для соответствующего типа данных. Комбинатор применяется к агрегатным функциям, которые могут принимать пустые входные данные. Если на вход агрегатной функции передан пустой набор данных, то с помощью комбинатора `-OrDefault` функция возвращает значение по умолчанию для соответствующего типа данных. Комбинатор применяется к агрегатным функциям, которые могут принимать пустые входные данные.
`-OrDefault` можно использовать с другими комбинаторами. `-OrDefault` можно использовать с другими комбинаторами.
**Синтаксис** **Синтаксис**
@ -109,7 +110,8 @@ FROM
Изменяет поведение агрегатной функции. Изменяет поведение агрегатной функции.
Этот комбинатор заменяет возвращаемое значение на `Null`, если на вход агрегатной функции передан пустой набор данных. Комбинатор работает с различными агрегатными функциями. Комбинатор преобразует результат агрегатной функции к типу [Nullable](../data-types/nullable.md). Если агрегатная функция не получает данных на вход, то с комбинатором она возвращает [NULL](../syntax.md#null-literal).
`-OrNull` может использоваться с другими комбинаторами. `-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 ``` sql
SELECT sumOrNull(number) FROM numbers(10) WHERE number > 10 SELECT sumOrNull(number), toTypeName(sumOrNull(number)) FROM numbers(10) WHERE number > 10
``` ```
Результат: Результат:
``` text ``` text
┌─sumOrNull(number)─┐ ┌─sumOrNull(number)─┬─toTypeName(sumOrNull(number))─
│ ᴺᵁᴸᴸ │ │ ᴺᵁᴸᴸ │ Nullable(UInt64) │
└───────────────────┘ └───────────────────┴───────────────────────────────
``` ```
Также `-OrNull` может использоваться с другими комбинаторами. Это полезно, когда агрегатная функция не принимает пустые входные данные. Также `-OrNull` может использоваться с другими комбинаторами. Это полезно, когда агрегатная функция не принимает пустые входные данные.