MongoDB で配列を使用して特定のドキュメントを検索する

MD Aminul Islam 2023年6月20日
  1. MongoDB の find() メソッド
  2. MongoDB のコレクションから特定のドキュメントを検索する
MongoDB で配列を使用して特定のドキュメントを検索する

MongoDB では、ドキュメント内のフィールドに、サブアイテムのようなデータがさらに含まれる場合があります。

この記事では、フィールドのサブアイテムに基づいて特定のドキュメントを検索する方法について説明します。 また、簡単にするために、トピックに関連する例を示します。

MongoDB の find() メソッド

組み込みメソッド find() を使用して、特定の基準に基づいてコレクションから特定のドキュメントを検索します。 ここで、サブアイテム配列に基づいて特定の要素を検索するパラメーターを渡す必要があります。

パラメータの一般的な構文は次のとおりです。

"field.item" : 'value'

注: 適切なコレクションに含まれているかどうかを確認してください。 特定のコレクションをオンにするには、コマンド use YourCollection を使用します。

MongoDB のコレクションから特定のドキュメントを検索する

以下の例では、アイテムの配列に基づいてコレクションからドキュメントを見つける方法を示します。 しかし、最初に、コレクションに以下のドキュメントがあると考えてみましょう。

{
    _id: ObjectId("637524953f80c4973e1f16b6"),
    sl: 1,
    Name: 'Ron',
    List: {
        Element_1: 'A',
        Element_2: '3'
        }
}
{
    _id: ObjectId("637524953f80c4973e1f16b7"),
    sl: 2,
    Name: 'Caron',
    List: {
        Element_1: 'A',
        Element_2: '3'
        }
}

上記のように、フィールド List には項目の配列がサブ項目として含まれています。 次に、これらのサブアイテムに基づいて特定のドキュメントを見つけます。

この目的のコマンドは次のようになります。

db.mycolletion.find({ "List.Element_1" : "A" })

上記のコマンドを実行すると、コンソールに次の出力が表示されます。

{
    _id: ObjectId("637524953f80c4973e1f16b6"),
    sl: 1,
    Name: 'Ron',
    List: {
        Element_1: 'A',
        Element_2: '3'
        }
}

この記事に示されているコマンドは MongoDB データベース用であり、コマンドは MongoDB コンソールで実行する必要があることに注意してください。

著者: MD Aminul Islam
MD Aminul Islam avatar MD Aminul Islam avatar

Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.

LinkedIn

関連記事 - MongoDB Array