我试图通过使用BinData的_id字段查询大型集合。
其中一些ID使用类型4的BinData:
"_id" : BinData(4,"CNDF66qIlCY92q1vFAAAAQ==")
虽然有些使用类型3的BinData:
"_id" : BinData(3,"CNDF66qJ29g92q1vFAAAEw==")
我需要找到所有具有BinData.type = 3的_id字段,并且想知道是否有人在MongoDB shell中进行过这样的查询。
任何帮助将不胜感激!
最佳答案
您可以使用 $where
样式查询来执行此操作,因为BinData
对象具有返回该“类型”的.subtype()
方法:
db.collection.find(function(){ return this._id.subtype() == 3 })
请注意,默认情况下,“类型” 3 BinData是由MongoDB 2.6的Shell可用的新UUID帮助程序生成的:
UUID("0123456789abcdeffedcba9876543210")
BinData(3,"ASNFZ4mrze/+3LqYdlQyEA==")
关于javascript - MongoDB Shell:按类型查询BinData,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24188881/