5
업데이트 수정 의미는 다음 업데이트 수정 해제 작품과 같이
는 수집 사용자와 몽고 DB 데이터베이스 데시벨을 고려하십시오. 사용자는 다음과 같은 형식으로, 문서를 포함 :>db.users.update({"username":"joe"},{"$unset":{"relationships.terminated": "many"}});
내 질문은 :
//Document for a user with username: joe
{
"_id" : ObjectId("4df5b9cf9f9a92b1584fff16"),
"relationships" : {
"enemies" : 2,
"friends" : 33,
"terminated" : "many"
},
"username" : "joe"
}
나는 종료 키를 제거 할 경우에, 나는 다음과 같이 $ 해제 업데이트 수정자를 지정해야 왜 대신 단순히 지정하는, 내가 설정 해제 $ 작동하기위한 관한 모든 키의 값 쌍을 지정해야 할 :
>db.users.update({"username":"joe"},{"$unset":{"relationships.terminated"}});
Mon Jun 13 13:25:57 SyntaxError: missing : after property id (shell):1
,
왜 안 되니?
편집 : 해제 $의 방법은 JSON 사양에 따라, 전체 키 값 쌍을 지정하거나, 이유를 할 수있는 '문에 값으로 "1"을 추가하는 경우
쉘이 "1"치환 자체를 수행? 그런 기능이 제공되지 않는 이유는 무엇입니까? 그러한 지원을 제공하는 함정이 있습니까?
덕분에, 즉 – DhruvPathak
왜'db.users.update ({ "사용자 이름"도움이된다 : "조 당신은 어떤 값 (1 일반적으로 몽고의 문서에 사용되는)에 상관없이
relationships.terminated
의 실제 값을 사용할 수 있습니다 "}, {"$ unset ": ["relationships.terminated "]}))'? –