1
私はこれを集合piplelineで行う必要があります。 私は、文書を含めることができるかどうかを決定するために使用される2つのフィールドを持っています。条件付きでMongodDbの文書をフィルタリングする
最初はagentType-の値が1または2である可能性があります。 2番目はagentImage - キーが存在するかどうかです。
私が探しているのは、このようなものです。
(AGENTTYPEの=== 1 & & agentImageはない存在が)場合 - >アウトフィルター、 もし(AGENTTYPE === 2) - >私は関係なく、すべての文書をしたいAGENTTYPE === 2の場合は文書
をキープそこに存在するagentImageの存在。このシナリオでは、結果がこれは動作しません
{agentType: 1, agentImage: "abc"}
{agentType: 2}
{agentType: 2, agentImage: "xyz"}
db.getCollection('agents').aggregate([{"$match":{agentImages: {'$exists':{'$or':[{$and:[{$eq:{'agentType': 1}},{$ne: {'agentImages': null}}]},{$eq: {'agentType': 2}}]}}}}])
をBE-すべき
サンプル
documents-、それはAGENTTYPE 2とし、そこにagentImageないですべての文書をフィルタリングします。