MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Cải thiện các trường truy vấn tồn tại trong MongoDB

Bạn có thể thiết kế lại lược đồ của mình như sau:

{
  pairs:[
  {k: "a", v: 5775},
  {k: "b", v: "b1"},
  ]
}

Sau đó, bạn lập chỉ mục khóa của mình:

db.people.ensureIndex({"pairs.k" : 1})

Sau đó, bạn sẽ có thể tìm kiếm theo đối sánh chính xác:

db.ent.find({'pairs.k':"a"})

Trong trường hợp bạn sử dụng Chỉ mục thưa thớt và lược đồ hiện tại của bạn, do @WesFreeman đề xuất, bạn sẽ cần tạo chỉ mục trên mỗi khóa bạn muốn tìm kiếm. Nó có thể ảnh hưởng đến hiệu suất ghi hoặc sẽ không được chấp nhận nếu các khóa của bạn không tĩnh.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB count () so với countDocuments ()

  2. Cách thay đổi khóa phân đoạn

  3. Cách xóa cột khỏi bộ sưu tập con

  4. Tại sao express nói với tôi rằng công cụ xem mặc định của tôi không được xác định?

  5. Làm cách nào để kết nối với MongoDB Atlas bằng Robomongo?