3

node.jsアプリでmongooseを使用しており、基本的に次のモデルがあります。

// Define Car model
CarSchema = new Schema({
  brand  : String,
  type: String,    
  maxSpeed : Number
});
mongoose.model('Car', CarSchema);
// Define User model
UserSchema = new Schema({
  lastname        : String,
  firstname : String,
  cars   : [CarSchema]
});
mongoose.model('User', UserSchema);

私はNoSQLを初めて使用するので、ぜひ試してみたいと思いますが、最初に、これが自分のニーズに本当に合っているかどうかを調べる必要があります。

上記のモデルを使用して、個人の車の中で特定のタイプの車を所有しているすべてのユーザーをリストするクエリを作成できますか?

4

1 に答える 1

7

マングースでそれをする方法はありません。しかし、mongodbではそれが可能です。したがって、mongodbではシェルクエリは次のようになります。

db.users.find({"cars.type":"sport"})

上記のクエリは、ネストされた車のコレクションに「sport」タイプの車を持っているすべてのユーザーを返します。

Mongodbドット表記のドキュメント。

于 2011-04-11T07:39:14.627 に答える