创建视图时,我在链接文档方面苦苦挣扎。
一个销售员有多个客户,每个客户有多个 购买。
我需要获取一个包含以下内容的视图:
每个客户购买的销售人员ID。
在关系数据库中,我将加入:
purchase.clientid -> client._id
client.salesperson -> salesperson._id
给出:
{ _id: "1", type: "purchase", clientid: "2", items: [] }
{ _id: "2", type: "client", salespersonid: "3", name: "Chris the client" }
{ _id: "3", type: "salesperson", name: "Simon the salesperson" }
我尝试阅读很多东西,但没有任何点击。我将如何执行此操作?
答案 0 :(得分:0)
Disposable a = camRepo.getAttachmentToken(result.getResult().getId())
.repeatWhen(t -> t.flatMap(x -> {
使用上述文档,您可以查询所有以'purchase-client2'开头的文档,以获取购买文档的数组。然后,每个购买单据都会告诉您销售人员是谁。根据销售人员的数量,假设您的销售ID到名称的映射已经在内存中,您可能已经拥有了所需的一切。
如果没有,则可以进行进一步查找(并可能缓存该结果)。如果该内存中查找或其他查找对您不起作用,您还可以在购买单据中复制销售人员的姓名。毕竟,NoSQL DB不遵循与关系数据库相同的规则,可以一次又一次地复制。您只需要考虑以后如何保持公仔同步。
如果您可以使用和滥用ID字段和无视逍遥游,那么您可能会更好。视图带来了自己的一系列问题。祝你好运!