MongoDB: 同じドキュメントのデータを使ってドキュメントを更新する [重複]。
2023-09-09 03:57:29
質問
私はドキュメントのリストを持っており、それぞれ緯度と経度のプロパティ(他のプロパティも含む)を持っています。
{ 'lat': 1, 'lon': 2, someotherdata [...] }
{ 'lat': 4, 'lon': 1, someotherdata [...] }
[...]
このように修正したいのですが、どうすればいいですか?
{ 'coords': {'lat': 1, 'lon': 2}, someotherdata [...]}
{ 'coords': {'lat': 4, 'lon': 1}, someotherdata [...]}
[...]
今のところ、こんな感じです。
db.events.update({}, {$set : {'coords': {'lat': db.events.lat, 'lon': db.events.lon}}}, false, true)
しかし、これは db.events.lat と db.events.lon を文字列として使用します。ドキュメントのプロパティを参照するにはどうしたらよいでしょうか。
応援しています。
どのように解決するのですか?
この $rename 演算子(この質問が投稿された1ヶ月後に導入されました)は、値を修正する必要のないこの種のことを本当に簡単にできるようにします。
いくつかのテストドキュメントを挿入する
db.events.insert({ 'lat': 1, 'lon': 2, someotherdata: [] })
db.events.insert({ 'lat': 4, 'lon': 1, someotherdata: [] })
を使う
$rename
演算子
db.events.update({}, {$rename: {'lat': 'coords.lat', 'lon': 'coords.lon'}}, false, true)
結果
db.events.find()
{
"_id" : ObjectId("5113c82dd28c4e8b79971add"),
"coords" : {
"lat" : 1,
"lon" : 2
},
"someotherdata" : [ ]
}
{
"_id" : ObjectId("5113c82ed28c4e8b79971ade"),
"coords" : {
"lat" : 4,
"lon" : 1
},
"someotherdata" : [ ]
}
関連
-
[解決済み】MongoDBシェルですべてのコレクションを一覧表示するには?
-
[解決済み] MongoDB ドキュメントからフィールドを完全に削除する方法は?
-
[解決済み] ストア enum MongoDB
-
[解決済み] ネストされた配列の中で、マッチしたサブドキュメントの要素のみを返す
-
[解決済み] MongoDB 3.2 の認証に失敗しました
-
[解決済み] pandasを使った "大量データ "ワークフロー【終了しました
-
[解決済み] コマンドラインからMongoDBデータベースを削除する方法を教えてください。
-
[解決済み] mongodbの最後のN個のレコードを取得する方法は?
-
[解決済み] 別のフィールドの値を使って MongoDB のフィールドを更新する
-
[解決済み] MongoDB コレクションのすべてのドキュメントに新しいフィールドを追加する
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] MongoDBでフィールドが存在することを確認する
-
[解決済み] Mongodb find() クエリ : ユニークな値だけを返す (重複はしない) [duplicate].
-
[解決済み] Mongodb ホットフィックス KB2731284
-
[解決済み] MongoDBのデフォルトのユーザーとパスワードは何ですか?
-
[解決済み] MongoDBでコレクションを削除するには?
-
[解決済み] 配列フィールドが空でない MongoDB レコードを検索する
-
[解決済み] 複数のキーで "distinct "を効率的に実行するには?
-
[解決済み] 別のフィールドの値を使って MongoDB のフィールドを更新する
-
[解決済み】2つの異なるコレクションで重複したMongo ObjectIdが生成される可能性?
-
[解決済み] mongodb ドキュメントの部分文字列を置換する方法