Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MongoDB

Đảo ngược kết quả truy vấn MongoDB (Phép toán ngược của $and)

Để đảo ngược kết quả (phép ngược của $and), sử dụng $or kết hợp $ne (not equal). Theo quy tắc De Morgan: NOT (A AND B) = (NOT A) OR (NOT B).

Tạo collection:

> db.demo4.insert({uid:1,"Name":"Chris","Age":22});
WriteResult({ "nInserted" : 1 })
> db.demo4.insert({uid:2,"Name":"David","Age":21});
WriteResult({ "nInserted" : 1 })
> db.demo4.insert({uid:3,"Name":"Bob","Age":23});
WriteResult({ "nInserted" : 1 })
> db.demo4.insert({uid:1,"Name":"Carol","Age":20});
WriteResult({ "nInserted" : 1 })

Hiển thị 4 tài liệu:

> db.demo4.find();

Truy vấn: uid=2 VÀ (Name KHÔNG phải Carol HOẶC Age KHÔNG phải 21):

> db.demo4.find({uid:2, $or: [{"Name": {$ne: "Carol"}}, {"Age": {$ne: 21}}]});

Kết quả trả về David (uid=2, Name=David≠Carol, Age=21):