Docs Menu

Docs HomeGo

ドキュメントの削除

項目一覧

  • Overview
  • サンプル データ
  • 削除操作
  • パラメーター
  • 戻り値
  • 詳細情報
  • API ドキュメント

このガイドでは、削除操作を使用して MongoDB コレクションからドキュメントを削除する方法を学習できます。

このガイドの例を実行するには、次のスニペットを使用して、これらのドキュメントを tea.ratingsコレクションにロードします。

coll := client.Database("tea").Collection("ratings")
docs := []interface{}{
bson.D{{"type", "Masala"}, {"rating", 10}},
bson.D{{"type", "Earl Grey"}, {"rating", 7}},
bson.D{{"type", "Oolong"}, {"rating", 10}},
bson.D{{"type", "Assam"}, {"rating", 7}},
}
result, err := coll.InsertMany(context.TODO(), docs)
if err != nil {
panic(err)
}
fmt.Printf("Number of documents inserted: %d\n", len(result.InsertedIDs))

Tip

存在しないデータベースとコレクション

書き込み操作を実行するときに必要なデータベースとコレクションが存在しない場合は、サーバーが暗黙的にそれらを作成します。

各ドキュメントには、 フィールドとtype ratingフィールドに対応するお茶の種類の評価が含まれています。

削除操作を使用して、MongoDB からデータを削除します。 削除操作は、次の方法で構成されています。

  • DeleteOne()は、フィルターに一致する最初のドキュメントを削除します。

  • DeleteMany()は、フィルターに一致するすべてのドキュメントを削除します

Tip

DeleteMany()メソッドの実行時にフィルターに一致するドキュメントが 1 つある場合は、 DeleteOne()メソッドを実行するのと同じです。

DeleteOne()メソッドとDeleteMany()メソッドでは、一致するドキュメントを指定するContextタイプとnon-nilクエリフィルターを渡すことが想定されています。

オプションとして、これらはどちらも削除操作を構成するために使用できるオプションを表す 3 つ目のパラメータとしてDeleteOptionsタイプを指定します。 DeleteOptionsを指定しない場合、ドライバーは各オプションのデフォルト値を使用します。

DeleteOptions タイプでは、次の方法でオプションを設定できます。

方式
説明
SetHint()
The index to use to scan for documents to delete.
Default: nil
SetCollation()
The type of language collation to use when sorting results.
Default: nil

DeleteOne()メソッドとDeleteMany()メソッドはDeleteResult型を返します。 このタイプには、削除されたドキュメント数を示すDeletedCountプロパティが含まれています。 If there are no matches to your filter, no document gets deleted and DeletedCount is 0.

次の例では、 DeleteMany()メソッドを使用して次の操作を実行します。

  • rating8を超えるドキュメントを照合して削除します

  • _idをインデックスとして使用する方法を指定します

filter := bson.D{{"rating", bson.D{{"$gt", 8}}}}
opts := options.Delete().SetHint(bson.D{{"_id", 1}})
result, err := coll.DeleteMany(context.TODO(), filter, opts)
if err != nil {
panic(err)
}
fmt.Printf("Number of documents deleted: %d\n", result.DeletedCount)

Tip

上記の例でDeleteMany()ではなくDeleteOne()メソッドが使用されている場合、ドライバーは一致した 2 つのドキュメントのうちの最初のドキュメントを削除します。

削除操作の実行可能な例については、次の使用例を参照してください。

上記の操作の実行方法の詳細については、次のガイドを参照してください。

ドライバーが Context を使用する方法について詳しくは、「 Context 」を参照してください。

このガイドで説明したメソッドや型の詳細については、次の API ドキュメントを参照してください。

←  ドキュメントの挿入ドキュメントの変更 →
フィードバックを送る
© 2022 MongoDB, Inc.

会社概要

© 2022 MongoDB, Inc.