首页 > 解决方案 > NoSQL 将集合数据插入另一个

问题描述

我有 2 个集合,例如:

用户数据:

{
  id:"uid_1",
  name:"user1",
  skills:[]
}

技能数据如:

{  
 id:"skill_1",
 name:"skill1" 
}

我的问题是:

我应该将整个skill文档插入到一个user's还是只是skill id

标签: databasenosql

解决方案


你可以去任何一种方式。这取决于您要如何设计,检索技术也会有所不同。 假设一个用户可以有多个技能:
第一种方法:将整个技能文档插入用户的:用户集合将其视为技能对象列表,您可以使用数组检索技术直接检索它。
第二种方法:仅插入技能.id用户的集合将其视为字符串列表。您可能必须使用来分隔两个集合的查询,或者在需要时使用聚合管道来连接两个集合。


推荐阅读