Hàm bản đồ
| Tên | Mô tả |
MAP
|
Tạo một giá trị bản đồ từ một loạt các cặp khoá-giá trị |
MAP_GET
|
Trả về giá trị trong một tệp ánh xạ dựa trên khoá được chỉ định |
MAP_SET
|
Trả về bản sao của một bản đồ có một loạt khoá đã cập nhật |
MAP_REMOVE
|
Trả về bản sao của một bản đồ đã xoá một loạt khoá |
MAP_MERGE
|
Hợp nhất một loạt bản đồ với nhau. |
CURRENT_CONTEXT
|
Trả về ngữ cảnh hiện tại dưới dạng bản đồ. |
MAP_KEYS
|
Trả về một mảng gồm tất cả các khoá trong một bản đồ. |
MAP_VALUES
|
Trả về một mảng gồm tất cả các giá trị trong một bản đồ. |
MAP_ENTRIES
|
Trả về một mảng gồm các cặp khoá-giá trị của một bản đồ. |
MAP
Cú pháp:
map(key: STRING, value: ANY, ...) -> MAP
Nội dung mô tả:
Tạo một bản đồ từ một loạt các cặp khoá-giá trị.
MAP_GET
Cú pháp:
map_get(map: ANY, key: STRING) -> ANY
Nội dung mô tả:
Trả về giá trị trong một tệp ánh xạ dựa trên khoá được chỉ định. Trả về giá trị ABSENT nếu key không tồn tại trong tệp ánh xạ hoặc nếu đối số map không phải là MAP.
Web
const result = await execute(db.pipeline() .collection("books") .select( field("awards").mapGet("pulitzer").as("hasPulitzerAward") ) );
Swift
let result = try await db.pipeline() .collection("books") .select([ Field("awards").mapGet("pulitzer").as("hasPulitzerAward") ]) .execute()
Kotlin
val result = db.pipeline() .collection("books") .select( field("awards").mapGet("pulitzer").alias("hasPulitzerAward") ) .execute()
Java
Task<Pipeline.Snapshot> result = db.pipeline() .collection("books") .select( field("awards").mapGet("pulitzer").alias("hasPulitzerAward") ) .execute();
Python
from google.cloud.firestore_v1.pipeline_expressions import Field result = ( client.pipeline() .collection("books") .select(Field.of("awards").map_get("pulitzer").as_("hasPulitzerAward")) .execute() )
MAP_SET
Cú pháp:
map_set(map: MAP, key: STRING, value: ANY, ...) -> MAP
Nội dung mô tả:
Trả về bản sao của giá trị map với nội dung được cập nhật bằng một loạt các cặp khoá-giá trị.
Nếu giá trị đã cho được phân giải thành một giá trị không có, thì khoá được liên kết sẽ bị xoá khỏi bản đồ.
Nếu đối số map không phải là MAP, hàm sẽ trả về một giá trị vắng mặt.
MAP_REMOVE
Cú pháp:
map_remove(map: MAP, key: STRING...) -> MAP
Nội dung mô tả:
Trả về bản sao của giá trị map với một loạt khoá đã bị xoá.
MAP_MERGE
Cú pháp:
map_merge(maps: MAP...) -> MAP
Hợp nhất nội dung của 2 hoặc nhiều bản đồ. Nếu nhiều bản đồ có các giá trị xung đột, thì giá trị cuối cùng sẽ được sử dụng.
CURRENT_CONTEXT
Cú pháp:
current_context() -> MAP
Trả về một bản đồ bao gồm tất cả các trường có sẵn tại thời điểm thực thi hiện tại.
MAP_KEYS
Cú pháp:
map_keys(map: MAP) -> ARRAY<STRING>
Nội dung mô tả:
Trả về một mảng chứa tất cả các khoá của giá trị map.
MAP_VALUES
Cú pháp:
map_values(map: MAP) -> ARRAY<ANY>
Nội dung mô tả:
Trả về một mảng chứa tất cả các giá trị của giá trị map.
MAP_ENTRIES
Cú pháp:
map_entries(map: MAP) -> ARRAY<MAP>
Nội dung mô tả:
Trả về một mảng chứa tất cả các cặp khoá-giá trị trong giá trị map.
Mỗi cặp khoá-giá trị sẽ ở dạng một bản đồ có hai mục, k và v.
Ví dụ:
map |
map_entries(map) |
|---|---|
| {} | [] |
| {"foo" : 2L} | [{"k": "foo", "v" : 2L}] |
| {"foo" : "bar", "bar" : "foo"} | [{"k": "foo", "v" : "bar" }, {"k" : "bar", "v": "foo"}] |