Marklogic 对数据库目录中的文档进行计数

Marklogic 对数据库目录中的文档进行计数,marklogic,Marklogic,假设我在MarkLogic数据库的目录/example中有50条记录。 有没有办法找到目录的大小?在这种情况下,它应该给我50。 我需要它在搜索API 提前谢谢 xdmp:estimate(cts:search(fn:doc(), cts:directory-query("/example/", "infinity"))) 使用over可获得快速响应 使用java api,您可以搜索给定目录,然后获得总点击次数 DatabaseClient client = DatabaseClien

假设我在MarkLogic数据库的目录
/example
中有50条记录。 有没有办法找到目录的大小?在这种情况下,它应该给我50。 我需要它在搜索API

提前谢谢

xdmp:estimate(cts:search(fn:doc(), cts:directory-query("/example/", "infinity")))

使用over可获得快速响应

使用java api,您可以搜索给定目录,然后获得总点击次数

    DatabaseClient client = DatabaseClientFactory.newClient(host,port, "admin", "****", Authentication.DIGEST);
    QueryManager queryMgr = client.newQueryManager();
    StructuredQueryBuilder qb = new StructuredQueryBuilder();
    StructuredQueryDefinition querydef = 
            qb.directory(true, "/content/enhanced-rosetta/");
    SearchHandle resultsHandle = queryMgr.search(querydef,new SearchHandle());
    MatchDocumentSummary[] results = resultsHandle.getMatchResults();
    System.out.println("Total count=" + resultsHandle.getTotalResults());
    client.release();

此外,如果您喜欢搜索API,您可以使用Search:estimate()执行相同的操作。或者最简洁的形式可能是
xdmp:estimate(xdmp:directory($uri,'infinity'))
谢谢Dave。我很好奇我们如何使用JavaAPI实现同样的功能?效率如何?