我在 google Cloud Firestore 中遇到查询条件问题。
任何人都可以帮助我。
下面是我获取第一个以 HA_ 开头的文档并按 ID DESC 排序的代码
public Article getLastArticleProvider() {
ApiFuture<QuerySnapshot> query = firebaseDB.getTblArticles()
.whereGreaterThanOrEqualTo("articleId", "HA_")
.orderBy("id", Query.Direction.DESCENDING)
.limit(1)
.get();
QuerySnapshot snapshotApiFuture;
Article article = null;
try {
snapshotApiFuture = query.get();
List<QueryDocumentSnapshot> documents = snapshotApiFuture.getDocuments();
for (QueryDocumentSnapshot document : documents) {
article = document.toObject(Article.class);
}
} catch (InterruptedException | ExecutionException e) {
return null;
}
return article;
}
我想获取articleId以“HA_”或“XE_”开头的文章的最后一个ID
例如上图:
if(articleId start with "HA_") => return object of id 831
if(articleId start with "XE_") => return object of id 833
现在我得到一个错误
java.util.concurrent.ExecutionException: com.google.api.gax.rpc.InvalidArgumentException: io.grpc.StatusRuntimeException: INVALID_ARGUMENT: 不等式过滤器属性和第一排序顺序必须相同:articleId 和 id
POPMUISE
弑天下
浮云间
相关分类