Add stings empty nonempty functions

This commit is contained in:
romanzhukov 2021-08-06 12:04:55 +03:00
parent 0f2c880876
commit ae756dd2b0
2 changed files with 74 additions and 10 deletions

View File

@ -48,9 +48,41 @@ Result:
## notEmpty {#notempty}
Returns 0 for an empty string or 1 for a non-empty string.
The result type is UInt8.
The function also works for arrays or UUID.
Checks whether the input string is not empty.
**Syntax**
``` sql
notempty(x)
```
A string is considered non-empty if it contains at least one byte, even if this is a space or a null byte. The UUID is empty if it contains all zeros (zero UUID).
**Arguments**
- `x` — Input value. [Array](../data-types/array.md), [String](../data-types/string.md), [UUID](../data-types/uuid.md).
**Returned value**
- Returns `1` for a non-empty string or `0` for an empty string string.
Type: [UInt8](../data-types/int-uint.md).
**Example**
Query:
```sql
SELECT notempty('text');
```
Result:
```text
┌─empty('')─┐
│ 1 │
└───────────┘
```
## length {#length}

View File

@ -23,7 +23,45 @@ empty(x)
**Возвращаемое значение**
- Возвращает `1` для пустой строки, и `0` — для непустой строки.
- Возвращает `1` для пустой строки и `0` — для непустой строки.
Тип: [UInt8](../data-types/int-uint.md).
**Пример**
Запрос:
```sql
SELECT notempty('text');
```
Результат:
```text
┌─empty('')─┐
│ 1 │
└───────────┘
```
## notEmpty {#notempty}
Проверяет, является ли входная строка непустой.
**Синтаксис**
``` sql
empty(x)
```
Строка считается непустой, если содержит хотя бы один байт, пусть даже это пробел или нулевой байт. UUID считается пустой, если он содержит только нули (нулевой UUID).
**Параметры**
- `x` — Входная строка. [Array](../data-types/array.md), [String](../data-types/string.md), [UUID](../data-types/uuid.md).
**Возвращаемое значение**
- Возвращает `1` для непустой строки и `0` — для пустой строки.
Тип: [UInt8](../data-types/int-uint.md).
@ -43,12 +81,6 @@ SELECT empty('');
└───────────┘
```
## notEmpty {#notempty}
Возвращает 0 для пустой строки, и 1 для непустой строки.
Тип результата — UInt8.
Функция также работает для массивов.
## length {#length}
Возвращает длину строки в байтах (не символах, не кодовых точках).