[解決済み】MongoDBのすべてのドキュメントのフィールド名を変更するにはどうすればよいですか?
2022-04-19 19:02:04
質問
MongoDBに5000レコードのコレクションがあり、それぞれが以下のような内容を含んでいると仮定する。
{
"occupation":"Doctor",
"name": {
"first":"Jimmy",
"additional":"Smith"
}
すべてのドキュメントで、フィールド名 "additional" を "last" に変更する簡単な方法はありますか?私は $rename 演算子がありますが、サブフィールドを指定する方法がよくわかりません。
どのように解決するのですか?
使用することができます。
db.foo.update({}, {$rename:{"name.additional":"name.last"}}, false, true);
または、そのプロパティを含むドキュメントを更新するだけです。
db.foo.update({"name.additional": {$exists: true}}, {$rename:{"name.additional":"name.last"}}, false, true);
は
false, true
を上のメソッドに含めると
{ upsert:false, multi:true }
. を必要とします。
multi:true
を更新するために
すべて
のレコードを使用します。
あるいは、前者の方法でもかまいません。
remap = function (x) {
if (x.additional){
db.foo.update({_id:x._id}, {$set:{"name.last":x.name.additional}, $unset:{"name.additional":1}});
}
}
db.foo.find().forEach(remap);
MongoDB 3.2では、この他に
db.students.updateMany( {}, { $rename: { "oldname": "newname" } } )
一般的な構文としては
db.collection.updateMany(filter, update, options)
https://docs.mongodb.com/manual/reference/method/db.collection.updateMany/
関連
-
[解決済み】MongoDBデータベースの名前を変更する方法とは?
-
[解決済み】MongoDBシェルですべてのコレクションを一覧表示するには?
-
[解決済み] 配列のサイズが1より大きい文書を検索します。
-
[解決済み] Mongodb ホットフィックス KB2731284
-
[解決済み] 配列フィールドが空でない MongoDB レコードを検索する
-
[解決済み] MongoDBに "like "を使ってクエリを実行する方法
-
[解決済み] コマンドラインからMongoDBデータベースを削除する方法を教えてください。
-
[解決済み] mongodbの最後のN個のレコードを取得する方法は?
-
[解決済み] 別のフィールドの値を使って MongoDB のフィールドを更新する
-
[解決済み】データベースとしてのNoSQL(MongoDB) vs Lucene(またはSolr)【クローズド
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] E: mongodb-org パッケージが見つかりません。
-
[解決済み] Mongorestore はファイル "db/collection.bson" をどうしたらいいかわからないため、スキップします。
-
[解決済み] MongoDB の個別集計
-
[解決済み] Mongodbでキーに基づいた重複を削除する方法は?
-
[解決済み] Mongo Restart Error -- /var/run/mongodb/mongod.pid が存在する
-
[解決済み] mongoDB の文字列フィールドの値の長さ
-
[解決済み] mongodb aggregation sort
-
[解決済み] 複数のキーで "distinct "を効率的に実行するには?
-
[解決済み】MongoDBでデータのバージョニングを実装する方法
-
[解決済み】RedisはmongoDBよりどれくらい速いのか?