$unset - Amazon DocumentDB

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

$unset

Amazon DocumentDB 中的$unset運算子用於從文件中移除指定的欄位。使用 移除欄位時$unset,會從文件中刪除欄位,並相應地減少文件大小。當您想要從文件中移除不必要的資料時,這會很有用。

參數

  • field:要從文件中移除的欄位。這可以是單一欄位或巢狀欄位的虛線路徑。

範例 (MongoDB Shell)

下列範例示範如何使用 $unset運算子,從example集合中的文件移除 Words 欄位。

建立範例文件

db.example.insert({ "DocName": "Document 1", "Date": { "Month": 4, "Day": 18, "Year": 1987, "DoW": "Saturday" }, "Words": 2482 })

查詢範例

db.example.update( { "DocName" : "Document 1" }, { $unset: { Words:1 } } )

輸出

{ "DocName": "Document 1", "Date": { "Month": 4, "Day": 18, "Year": 1987, "DoW": "Saturday" } }

在此範例中,運算$unset子用於從DocName等於「文件 1」的文件中移除 Words 欄位。產生的文件不再包含 Words 欄位。

程式碼範例

若要檢視使用 $unset命令的程式碼範例,請選擇您要使用的語言標籤:

Node.js
const { MongoClient } = require('mongodb'); async function removeField() { const client = await MongoClient.connect('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false'); const db = client.db('test'); const collection = db.collection('example'); const result = await collection.updateOne( { "DocName": "Document 1" }, { $unset: { "Words": 1 } } ); console.log(`Modified ${result.modifiedCount} document(s)`); client.close(); } removeField();
Python
from pymongo import MongoClient def remove_field(): client = MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false') db = client['test'] collection = db['example'] result = collection.update_one( {"DocName": "Document 1"}, {"$unset": {"Words": 1}} ) print(f"Modified {result.modified_count} document(s)") client.close() remove_field()