mongodb中不存在的逻辑

mongodb中不存在的逻辑,mongodb,Mongodb,这是sql等价物 SELECT TOP 1 filed1 FROM tab WHERE f1 = @lngTransactionId AND f2 = 'R' AND f3 = '' AND NOT EXISTS (SELECT 1 FROM tab GV WITH(NOLOCK) WHERE f1 = @lngTransactionId AND f2 = 'R' AND f3 = 'R') 我试过这样做 db.collection.find( { "$and" : [ { "f

这是sql等价物

 SELECT TOP 1  filed1 FROM tab  
WHERE f1 = @lngTransactionId 
AND f2 = 'R' AND f3 = ''
AND NOT EXISTS 
(SELECT 1 FROM tab GV WITH(NOLOCK) WHERE f1 = @lngTransactionId 
AND f2 = 'R' AND f3 = 'R')
我试过这样做

db.collection.find( { "$and" : [ { "f1":4525 }, { "f2" : "R" } , { "f3" :  "" } , 
                              {"$nor" : [ { "f1":4525 }, { "f2" : "R" } , { "f3" :  "R" } ]}]
                              })
它没有给出预期的结果


如何在单个mongo查询中不存在sql中的情况下实现该条件。

在MongoDB中,查询/查找一次只能处理一个文档。看起来您的SQL查询实际上执行了两个不同的查询。找到X,但只有当没有第二个X和Y也是真的时。你看过聚合框架了吗?你能展示更多关于文档结构的信息以及你期望的结果吗?