Mongoose 필드(field)명 변경, Object 키 값 변경

2021. 4. 22. 19:33MongoDB, Mongoose

const January = new Schema({
    rankPoint: { type:Number },
    lastWeekPoint: { type:Number },
    totalScore: { type:Number },
    rank: { type:Number },
});

 

"January":{
	
    "rankPoint" : 0,
    "lastWeekPoint" : 0,
    "totalScore" : 0,
    "rank" : 3
    
}

January 스키마가 구성되어 있다. 

 

lastWeekPoint를 lastDayPoint로 바꾸려고 할때 

$rename을 사용한다.

 

사용방법

January.findOneAndUpdate({},{$rename: {lastWeekPoint: 'lastDayPoint' }}, {multi: true})

명령어를 넣어주면 value값은 변경되지않고 key값만 깔끔하게 변경이 된다.

한개의 document만 변경한 예시이고

복수의 document를 변경할때는 updateMany() 같은 함수를 사용하면 된다.

 

출처 :  stackoverflow.com/questions/53447156/rename-field-in-mongoose

728x90
반응형