1

是否可以根据文档中的两个字段在 n1ql 中加入两个文档?

在连接的语言查询示例中,例如:

SELECT c, pr
FROM purchases pu
JOIN customer c ON KEYS pu.customerId
NEST product pr
ON KEYS ARRAY li.product FOR li IN pu.lineItems END
WHERE pu.customerId = "customer1"

奇怪的是,我不知道c用于连接的属性是什么,或者如何指定它。

假设我有_type='Customer'具有myId属性的文档,并且我想将这些文档加入到_type='PurchaseOrder'具有customerId属性的文档中。那怎么做?

4

1 回答 1

1

N1QL 使用来自一个文档的表达式执行 JOIN,该表达式引用第二个文档的外部主键。在您的示例中,客户上的 JOIN 使用客户 c 的外部主键。请注意,Couchbase 将文档数据库与键值数据库结合在一起。因此,Couchbase 中的每个文档都有一个唯一的外部密钥。该外部键是 N1QL 用来加入第二个文档的键。

于 2016-03-29T23:04:59.407 回答