Couchbase Java SDK:包含文档 ID 的 N1QL 查询

Couchbase Java SDK: N1QL queries that include document id

我希望使用 Java 客户端 SDK 在我的 Couchbase 数据库上执行查询,这将 return 包含每个结果的文档 ID 的结果列表。目前我正在使用:

Statement stat = select("*").from(i("myBucket"))
                 .where(x(fieldIwantToGet).eq(s(valueIwantToGet)));

N1qlQueryResult result = bucket.query(stat);

但是,N1qlQueryResult 似乎只是 return 一个没有任何关联元数据的 JsonObjects 列表。查看文档,我似乎想要一个 returns 文档对象列表的方法,但我看不到我调用的任何存储桶方法来完成这项工作。

有人知道这样做的方法吗?

您需要使用以下查询来获取文档 ID:

Statement stat = select("meta(myBucket).id").from(i("myBucket")) .where(x(fieldIwantToGet).eq(s(valueIwantToGet)));

上面会 return 你的文档 ID 数组。