我正在使用MarkLogic Node.js客户端API。我正在运行一个查询,我想在其中指定多个集合;但我得到零结果。但是,如果我只指定一个集合;查询有效。以下是一个集合的示例:
收藏集: test1 和 test2
使用 1 集合进行查询:工作
db.documents.query(
qb.where(
qb.collection("test1"),
qb.value("productId","8989")
))
.result();
请帮助我如何指定两个系列?
以下查询返回零结果:
db.documents.query(
qb.where(
qb.collection("test1"),qb.collection("test2"),
qb.value("productId","8989")
))
.result();
答案 0 :(得分:4)
“失败”,是指查询没有返回结果或错误?
qb.where
中的约束是and
',因此以下内容仅匹配两个集合中的文档:
qb.where(
qb.collection("test1"),
qb.collection("test2")
)
要匹配任一集合中的文档,您需要or
查询:
qb.where(
qb.or(
qb.collection("test1"),
qb.collection("test2")
)
)