形如 A and not (B or C)
資料庫記錄結構為:
{
{'pic':[1,2,3,6]}
{'pic':[2,3,4]}
{'pic':[3,4,5,6,7,8]}
{'pic':[5,6,7,8,9]}
}
如果要查詢以上的結構,例如想要找出: 3在pic裡面,而7 或 9 不在pic裡面的欄位。
mongodb中使用否的運算子一共有4個,分別為 $not $nin $nor $ne
其中 $ne 不適合數組,也就是 pic:{$ne:[7]} 無法實現類似 pic:{$nin:[7]}的意思。
而 $nin 中無法嵌套or 或 and運算符,即 pic:{$nin:{$or:[{pic:7}]}} 會報錯。
那麼應該怎麼使用查詢才能實作not運算呢? 求教~