0
使用$和匹配字段的多個值並使用$匹配$ in有什麼區別或優點?
db.collectionOne.aggregate([
{$match:{name:{'$in':['Jack','Jill']},
city:{'$in':['LA','NY']}
}
}])
或
db.collectionOne.aggregate([
{$match:{
$and:[{name:{'$in':['Jack','Jill']},
city:{'$in':['LA','NY']}
}
]}
}])
或者應當美元,只能用於數值,以獲得更好的性能?
沒有一個錯字,但同樣可以使用查詢兩種方式(礦井和URS)。但我確實明白,這不是一個好例子。無法使用'db.collectionOne.aggregate({'match':['Jack','Jill','Bill','Kill']}, name:{' $ nin':['Matt','Bill']} } }])'而不是使用$和。這兩個性能有什麼不同? – cartman619
我說錯字,因爲$,目的是用來實現多種條件對單場,正如我在答覆中提到, 但是你用的方法是不正確的 db.collectionOne.aggregate([ {$比賽: {'name'{'$'in':['Jack','Jill','Bill','Kill']}, name:{'$ nin':['Matt','Bill ']} } ]} }]) –
在提問之前,我確實經歷了相同的頁面,文檔使用$和布爾類型AND操作更有意義。但是我看到很多人使用$和替換$匹配,即使沒有布爾類型的操作來執行。 – cartman619