Dynamodb db 不支持 RDBMS 之类的关系,如果您想要 RDBMS stlye 之类的引用,则必须根据员工的技能 ID 多次查询。
让我们举个例子,在 NoSQL 中实现 RDBMS 方法(不推荐),
记录技能表列表
{ "skillId": 1, "name": "HTML" },
{ "skillId": 2, "name": "CSS" },
{ "skillId": 3, "name": "JS" }
Employee 表中具有 SkillId 的记录列表
{ "employeeId ": 1, "name": "ONE", "skillId": [1,2,3] }
如果您的应用程序经常检索 Employee 数据,您可以另外查询以通过技能 ID 获取技能详细信息。它增加了开发的复杂性,也不推荐使用。
推荐方法
最佳方法是将技能信息作为列表包含在员工数据中。
带有技能列表的员工记录
{
"employeeId": 1,
"name": "ONE",
"skill": [ //Adding skills as a list
{
"skillId": 1,
"name": "HTML"
},
{
"skillId": 2,
"name": "CSS"
}
]
}
通过在 Employee 表中添加技能,您可以在单个查询中使用技能列表检索 Employee 详细信息。