我有问题哪种计数方法更快: 我有一些名为filterParameters的过滤器参数。 现在我在做:
1. First option:
int count = count with db.dbCollection.count(filterParameters)
and then
dbCursor = db.dbCollection.find(filterParameters).skip(..).limit(..)
2. Second way:
dbCursor = db.dbCollection.find(filterParameters).skip(..).limit(..)
int count = dbCursor.count()
在Java中,第一种方式:
Integer countAllItems = documentService.count(documentType,filterQuery)
DBCursor documents = documentService.list(documentType, [:], filterQuery, sortQuery, command.start, command.count)
其中:documentService.count(documentType,filterQuery)
在做:
def collection = db.getCollection(documentType.collectionName)
collection.count(filterQuery)
和documentService.list只能在集合中找到。
然后是第二种方式:
DBCursor documents = documentService.list(documentType, [:], filterQuery, sortQuery, command.start, command.count)
Integer countAllItems = documents.count()
哪一种方法更快?
答案 0 :(得分:2)
两者都没有,您使用的特定计数是游标计数的符号链接,它们是相同的功能。