我想用同一数组索引的另一个元素更新子数组的元素。实际上我所做的错误是列名中的拼写错误(评论,评论)所以想要通过评论更新所有评论栏。任何人都可以给我查询来更新这个场景。
这是我的文件json
library(ggplot2)
library(plotly)
library(reshape)
library(Hmisc)
x <- Seatbelts
y <- as.matrix(x)
rt <- rcorr(y)
mtlr <- melt(rt$r)
mtlp <- melt(rt$P)
gx <- ggplot(mtl, aes(X1, X2, fill = value)) + geom_tile() +
scale_fill_gradient(low = "cyan", high = "red")
ggplotly(gx)
答案 0 :(得分:2)
db.temp_reviews.find( {'review_reply.reviews' : {$exists : true} } ).forEach( function (doc) {
doc.review_reply.forEach(function (z) {
if(z.reviews){
z.review = z.reviews
delete z.reviews;
}
});
db.temp_reviews.save(doc);
});
答案 1 :(得分:1)
你接近了,你只需要遍历你的数组,检查是否存在错误的字段,创建字段,删除错误的字段:
db.reviews.find({
'review_reply.reviews': {
$exists: true
}
}).forEach(function(doc) {
for (var i = 0; i < doc.review_reply.length; i++) {
if (doc.review_reply[i].hasOwnProperty("reviews")) {
doc.review_reply[i].review = doc.review_reply[i].reviews;
delete doc.review_reply[i].reviews;
}
}
db.reviews.save(doc);
});