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

MongoDB + trình điều khiển C # + mảng truy vấn các phần tử trong đó mỗi phần tử mảng chứa tài liệu con để truy vấn

Hãy thử cái này thay thế

Query.ElemMatch("Children", Query.And(Query.EQ("StatusId",1), Query.EQ("Active",true),Query.LT("SubChild.ExpiresOn",DateTime.UtcNow)));

Tự hỏi tại sao truy vấn này hoạt động một cách kỳ diệu? Đó là trường hợp (StatusId so với StatusID ). JavaScript phân biệt chữ hoa chữ thường.

Bạn có thể loại bỏ vấn đề này bằng cách sử dụng các truy vấn Linq được gõ mạnh, như:

from x in collection.AsQueryable()
where x.Children.Any(child => 
    child.StatusId == 1 
    && child.Active 
    && child.SubChild.ExpiresOn < DateTime.UtcNow)
select x



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Phần tử kéo MongoDB từ mảng sâu hai cấp

  2. Chuyển hướng đầu ra của truy vấn mongo sang tệp csv

  3. BadValue Không hợp lệ hoặc không có ngôn ngữ người dùng được đặt. Hãy đảm bảo các biến môi trường LANG và / hoặc LC_ * được đặt chính xác

  4. Chèn mongodb hàng loạt trong Meteor hoặc Node

  5. MongoDB $ ceil