Các hàm gỡ lỗi
| Tên | Mô tả |
EXISTS
|
Trả về TRUE nếu giá trị không phải là giá trị vắng mặt
|
IS_ABSENT
|
Trả về TRUE nếu giá trị là giá trị vắng mặt
|
IF_ABSENT
|
Thay thế giá trị bằng một biểu thức nếu giá trị đó vắng mặt |
IS_ERROR
|
Bắt và kiểm tra xem biểu thức cơ bản có đưa ra lỗi hay không |
IF_ERROR
|
Thay thế giá trị bằng một biểu thức nếu giá trị đó đưa ra lỗi |
ERROR
|
Chấm dứt quá trình đánh giá và trả về lỗi kèm theo thông báo đã chỉ định |
EXISTS
Cú pháp:
exists(value: ANY) -> BOOLEAN
Mô tả:
Trả về TRUE nếu value không phải là giá trị vắng mặt.
Ví dụ:
value |
exists(value) |
|---|---|
| 0L | TRUE |
| "foo" | TRUE |
NULL |
TRUE |
ABSENT |
FALSE |
Node.js
const result = await db.pipeline() .collection("books") .select(field("rating").exists().as("hasRating")) .execute();
Web
Ví dụ:
const result = await execute(db.pipeline() .collection("books") .select(field("rating").exists().as("hasRating")) );
Swift
let result = try await db.pipeline() .collection("books") .select([Field("rating").exists().as("hasRating")]) .execute()
Kotlin
Ví dụ:
val result = db.pipeline() .collection("books") .select(field("rating").exists().alias("hasRating")) .execute()
Java
Ví dụ:
Task<Pipeline.Snapshot> result = db.pipeline() .collection("books") .select(field("rating").exists().alias("hasRating")) .execute();
Python
from google.cloud.firestore_v1.pipeline_expressions import Field result = ( client.pipeline() .collection("books") .select(Field.of("rating").exists().as_("hasRating")) .execute() )
Java
Pipeline.Snapshot result = firestore .pipeline() .collection("books") .select(exists(field("rating")).as("hasRating")) .execute() .get();
IS_ABSENT
Cú pháp:
is_absent(value: ANY) -> BOOLEAN
Mô tả:
Trả về TRUE nếu value là giá trị vắng mặt và FALSE nếu không. Giá trị vắng mặt là những giá trị bị thiếu trong dữ liệu đầu vào, chẳng hạn như một trường tài liệu bị thiếu.
Ví dụ:
value |
is_absent(value) |
|---|---|
| 0L | FALSE |
| "foo" | FALSE |
NULL |
FALSE |
ABSENT |
TRUE |
IF_ABSENT
Cú pháp:
if_absent(value: ANY, replacement: ANY) -> ANY
Mô tả:
Nếu value là giá trị vắng mặt, hãy đánh giá và trả về replacement. Nếu không, hãy trả về value.
Ví dụ:
value |
replacement |
if_absent(value, replacement) |
|---|---|---|
| 5L | 0L | 5L |
NULL |
0L | NULL |
ABSENT |
0L | 0L |
IS_ERROR
Cú pháp:
is_error(try: ANY) -> BOOLEAN
Mô tả:
Trả về TRUE nếu lỗi được đưa ra trong quá trình đánh giá try. Nếu không, hãy trả về FALSE.
IF_ERROR
Cú pháp:
if_error(try: ANY, catch: ANY) -> ANY
Mô tả:
Nếu lỗi được đưa ra trong quá trình đánh giá try, hãy đánh giá và trả về replacement. Nếu không, hãy trả về giá trị đã phân giải của try.
ERROR
Cú pháp:
error(message: STRING) -> ANY
Mô tả:
Việc đánh giá hàm error sẽ dẫn đến việc đánh giá đường dẫn để chấm dứt bằng lỗi. message đã cho sẽ được đưa vào lỗi.
Ví dụ:
cond |
res |
switch_on(cond, res, error("no condition matched")) |
|---|---|---|
TRUE |
1L | 1L |
FALSE |
1L | ERROR ("no condition matched") |