複数ドキュメントの更新
誤りの修正や、特定の条件を満たすレコードへのタグ付けなど、同じ更新を複数のドキュメントに適用したいことがあります。そんなときに役立つのが .update_many() です。
この演習では、アカデミー賞(Oscar)を受賞し、かつ評価が 7.0 を超える映画に「お気に入り」タグを付けます。
この演習はコースの一部です
Pythonで学ぶMongoDB入門
演習の手順
query_filterを定義し、"won_oscar"がTrueで、かつ"rating"が7.0より大きい映画すべてにマッチさせます。updateを定義し、新しいフィールド"is_favorite"をTrueに$setします。query_filterに一致するすべてのドキュメントに対して更新を実行します。- 今回の更新で影響を受けたドキュメント数を出力します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Filter for Oscar winning movies with rating greater than 7.0
query_filter = {
"____": ____,
"____": { "____": ____ }
}
# Update to set is_favorite to True
update = ____
# Perform update for all documents that match filter
res = ____
# How many documents were affected?
print(____)