该字段的数据类型为字符串。我想在mongoDB中找到一个字段的最长和最短值的长度。
我的收藏夹中总共有500000个文档。
最佳答案
您可以使用mongo shell脚本。请注意,它将执行全表扫描。
function findMinMax() {
var max = 0;
var min = db.collection.findOne().fieldName.length;
db.collection.find().forEach(function(doc) {
var currentLength = doc.fieldName.length;
if (currentLength > max) {
max = currentLength;
}
if (currentLength < min) {
min = currentLength;
}
});
print(max);
print(min);
}
use <databaseName>
findMinMax();
您可以将函数保存在c:\minMax.js文件中,然后以以下方式运行该文件:
c:\mongodb\bin> mongo dbName < c:\minMax.js
注意:您可能需要提供必要的主机名,用户名,密码才能连接到数据库。
c:\mongodb\bin> mongo --host hostName --port portNumber -u userName -p password dbName < c:\minMax.js
关于javascript - 如何在mongoDb中查找字段值的最长和最短长度?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26395422/