在Couchbase

时间:2016-03-01 10:30:13

标签: java mapreduce couchbase

我在Couchbase中转换内置reduce函数的返回值时遇到问题。我使用_count来获取检索到的文档数。我对.reduce()对象使用ViewQuery函数。

我希望结果为Integerlong值。我无法对最终值进行类型转换,但我得到以下异常。

Exception in thread "main" java.lang.ClassCastException: com.couchbase.client.java.view.DefaultViewResult cannot be cast to com.couchbase.client.java.view.ViewRow

ViewQuery query = ViewQuery.from("dev_LCDD", "numDocs").stale(Stale.FALSE).reduce(true);
ViewResult result = theBucket.query(query);
return result;

1 个答案:

答案 0 :(得分:1)

这是检索计数结果的方法:

    ViewQuery query = ViewQuery.from("dev_LCDD", "count").stale(Stale.FALSE).reduce(true);
    ViewResult result = bucket.query(query);
    List<ViewRow> rows = result.allRows();
    ViewRow row = rows.get(0);
    Integer count = (Integer) row.value();