0
에 나는이,몽고 DB 업데이트 하위 - 하위 문서가 없습니다 배열
시도{
"S" : {
"500209" : {
"total_income" : 38982,
"interest_income" : 1714,
"reported_eps" : 158.76,
"year" : 201303,
"yield": 1001, <== inserted a new attribute
}
},
"_id" : "pl"
}
이 같은 문서,
{
"S" : {
"500209" : {
"total_income" : 38982,
"interest_income" : 1714,
"reported_eps" : 158.76,
"year" : 201303
}
},
"_id" : "pl"
}
이 같은이 문서를 업데이트하려고를 가지고
db.my_collection.update({_id: 'pl'},{$set: {'S.500209.yield': 1}})
그러나 나는 그것을 만들 수 없습니다. 그리고 스택 오버플로와 구글을 검색했지만 찾을 수 없습니다.
나는 많은 답변을 얻었지만 대부분은 하위 문서를 배열로 유지합니다.
내 문제를 해결하는 데 도움이되고 대부분의 하위 문서를 배열에 보관하는 이유를 알려주십시오.
작동하지 않음 :-) 어쨌든 고맙습니다. –
정확하게 맞습니다. 문제는 번호 때문입니다. 그 숫자를 문자열로 변경하고 시도했습니다. 그것은 효과가있다. –
내가 추측 하듯이 :) 그러나 문제는 숫자 필드 이름에 분명합니다. S.500209는 S가 배열이고 500209 번째 요소를 원한다는 것을 의미합니다. "500209"키에 접두어를 추가하고 "a500209"와 같은 것으로 만들 수 있습니까? 'S.a500209.yield'가 효과가 있다고 생각합니다. 필드 이름을 변경하지 않고도 솔루션을 사용할 수 있다면 누군가가 우리에게 계몽을 줄 것입니다. –