2014-10-17 2 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

+0

핵심 기술 데이터를 일치시켜야합니다. –

+0

당신이하려는 일에 대해 정교하게 다룰 필요가 있습니다. –

답변

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 

skillCodes직원 인스턴스에 대해 훨씬 더 OO 주어진 생성자가 될 수 있었던, 내가 당신에게 떠날 것이다.

관련 문제