Referência de funções genéricas
Funções genéricas
| Nome | Descrição |
CURRENT_DOCUMENT
|
Retorna o documento que está sendo processado no pipeline. |
CONCAT
|
Concatena dois ou mais valores do mesmo tipo. |
LENGTH
|
Calcula o comprimento de um String, Bytes, Array, Vector ou Map.
|
REVERSE
|
Inverte um String, Bytes ou Array.
|
CURRENT_DOCUMENT
Sintaxe:
current_document() -> MAP
Descrição:
Avalia um mapa que contém todos os campos definidos no escopo atual. Isso é útil ao mesclar ou agregar vários documentos ou quando você quer inspecionar dinamicamente os nomes dos campos no documento.
Por exemplo, para receber uma lista de documentos agrupados por um campo:
Node.js
const cities = await db.pipeline()
.collection("/restaurants")
.aggregate({
groups: [ field("location.state").as("state") ],
accumulators: [ arrayAgg(currentDocument().as("restaurants")) ]
})
.execute();
CONCAT
Sintaxe:
concat[T <: STRING | BYTES | ARRAY](values:T ...) -> T
Descrição:
Concatena dois ou mais valores do mesmo tipo.
Exemplos:
| values | concat(values) |
|---|---|
| "abc", "def" | "abcdef" |
| [1, 2], [3, 4] | [1, 2, 3, 4] |
| b"abc", b"def" | b"abcdef" |
| "abc", [1,2,3], "ghi" | erro |
| [1,2,3] | erro |
| "abc", null | null |
Node.js
concat(constant("Author ID: "), field("authorId"));
Web
concat(constant("Author ID: "), field("authorId"));
Swift
let displayString = Constant("Author ID: ").concat([Field("authorId")])
Kotlin
Android
val displayString = constant("Author ID: ").concat(field("authorId"))
Java
Android
Expression displayString = constant("Author ID: ").concat(field("authorId"));
Python
Constant.of("Author ID: ").concat(Field.of("authorId"))
LENGTH
Sintaxe:
length[T <: STRING | BYTES | ARRAY | VECTOR | MAP](value: T) -> INT64
Descrição:
Calcula o comprimento de um valor String, Bytes, Array, Vector ou Map.
Exemplos:
| valor | length(value) |
|---|---|
| "hello" | 5 |
| [1, 2, 3, 4] | 4 |
| b"abcde" | 5 |
| null | null |
| 1 | erro |
REVERSE
Sintaxe:
reverse[T <: STRING | BYTES | ARRAY](value: T) -> T
Descrição:
Inverte um valor String ou Bytes.
Exemplos:
| valor | reverse(value) |
|---|---|
| "hello" | "olleh" |
| [1, 2, 3] | [3, 2, 1] |
| b"abc" | b"cba" |
| 23 | erro |
| null | null |
A seguir
- Consulte a visão geral das consultas de pipeline