3

mongoドキュメントの配列プロパティに値があるかどうかを確認する方法がわかりません。たとえば、コレクション ユーザーがいて、次のようなドキュメントがあります。

{
  'name':'Paul',
  'age':43,
  'friendsIDs': [ ObjectId('qqq...'), ObjectId('www...'), ObjectId('eee...') ],
}

ここで、ID ObjectId('qqq...') を持つユーザーが Paul の友人であるかどうかを確認したいとします。これは、ほぼすべてのプログラミング言語で非常に簡単に実行できます。たとえば、php では次のようになります。

$isFriendOfPaul = in_array( ObjectId('qqq...'), $friendsIds );

しかし、mongoでこれを照会する方法は? 何か案は?

4

3 に答える 3

18

実際、それは$ in manualです。

于 2013-04-15T11:20:42.073 に答える
3

クエリは次のようにする必要があります。

db.collection.find({"name": "Paul", "friendsIDs": "qqq"}) 

Paulこのクエリは、名前が で にfriendsIDs等しいドキュメントを検索しますqqq

于 2013-04-15T10:23:33.183 に答える