2014-10-17 36 views
0

如何从两个json文档中找到匹配的数据。例如:我有两个json文档和技能json文档。如何从couchdb中的两个json文档中找到匹配的数据?

技能凭证:

{ 

    "_id": "b013dcf12d1f7d333467b1447a00013a", 
    "_rev": "3-e54ad6a14046f809e6da872294939f12", 
    "core_skills": [ 
      { 
       "core_skill_code": "SA1", 
       "core_skill_desc": "communicate with others in writing" 
      }, 
      { 
       "core_skill_code": "SA2", 
       "core_skill_desc": "complete accurate well written work with attention to detail" 
      }, 
      { 
       "core_skill_code": "SA3", 
       "core_skill_desc": "follow guidelines/procedures/rules and service level agreements" 
      }, 
      { 
       "core_skill_code": "SA4", 
       "core_skill_desc": "ask for clarification and advice from others" 
      } 
     ]} 

在员工文件:

{ 

    "_id": "b013dcf12d1f7d333467b12350007op", 
    "_rev": "3-e54ad6a14046f809e6da156794939f12", 
    "employee_name" :"Ashwin", 
    "employee_role" : "Software engineer", 
    "core_skills":["SA1","SA4"] 
} 
+0

那么你试图匹配的数据是什么? – RobG 2014-10-17 06:44:32

+0

我需要匹配核心技能数据。 – 2014-10-17 06:54:25

+0

您需要详细说明您要做什么。 – 2014-10-17 22:23:09

回答

0

我不知道你想做的事,但下面可能会有所帮助。假设第一个数据集的能力及其描述的列表,第二个是雇员记录,然后分配给有适当的名称变量可能是这样的:

var skillCodes = { 
    "_id": "b013dcf12d1f7d333467b1447a00013a", 
    "_rev": "3-e54ad6a14046f809e6da872294939f12", 
    "core_skills": [{ 
     "core_skill_code": "SA1", 
     "core_skill_desc": "communicate with others in writing" 
    },{ 
     "core_skill_code": "SA2", 
     "core_skill_desc": "complete accurate well written work with attention to detail" 
    },{ 
     "core_skill_code": "SA3", 
     "core_skill_desc": "follow guidelines/procedures/rules and service level agreements" 
    },{ 
     "core_skill_code": "SA4", 
     "core_skill_desc": "ask for clarification and advice from others" 
    } 
    ]}; 

var employee0 = { 
    "_id": "b013dcf12d1f7d333467b12350007op", 
    "_rev": "3-e54ad6a14046f809e6da156794939f12", 
    "employee_name" :"Ashwin", 
    "employee_role" : "Software engineer", 
    "core_skills":["SA1","SA4"] 
}; 

创建技能指标使得寻找特殊技能的多简单,一些代码要做到这一点是:

var skillCodeIndex = {}; 
skillCodes.core_skills.forEach(function(item){ 
    skillCodeIndex[item.core_skill_code] = item.core_skill_desc; 
}); 

现在所有需要的是一个函数来获取技能的特定雇员,说:

function getCoreSkills (employee) { 
    console.log('Employee ' + employee.employee_name + ' has the following core skills:'); 
    employee.core_skills.forEach(function(skill) { 
    console.log(skill + ': ' + skillCodeIndex[skill]); 
    }); 
} 

一个例子:

getCoreSkills(employee0); 

Employee Ashwin has the following core skills: 
SA1: communicate with others in writing 
SA4: ask for clarification and advice from others 

以上可能变得更加OO给出构造函数skillCodes员工情况下,我会留给你。

相关问题