java - 使用 Java 中的 N1QL 查询通过 where 子句从 Couchbase 过滤记录

标签 java api couchbase

我的查询中需要有一个 where 子句来过滤掉小于作为参数传递的星期的记录。

Java 代码(N1QL 查询):

statement = select("distinct Week, Season")                     
.from(i(bucketName.toString())).where((x("meta().id").like(s("TescoWeek%"))))
                .orderBy(Sort.asc("Week"));
        return couchBaseRepository.getQueryResultAsString(cluster, bucketName, statement);

我只想从“Week”字段中获取大于“201526”的记录。

Couchbase 文档示例是:

{
  "id": "SS16-201525",
  "type": "TescoWeeks",
  "Season": "SS16",
  "Week": "201525"
}

谢谢, IRK

最佳答案

添加以下查询并得到我预期的结果。

statement = select("distinct id, Season, Week") 
.from(i(bucketName.toString())).where(x("Season").eq(s(seasonId)).and(x("meta().id").like(s("TescoWeek%"))
                .and(x("Week").gte(s(startWeek)))))
                .orderBy(Sort.asc("Week")); 
        System.out.println(statement.toString());
        return couchBaseRepository.getQueryResultAsString(cluster, bucketName, statement);

关于java - 使用 Java 中的 N1QL 查询通过 where 子句从 Couchbase 过滤记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40624610/

相关文章:

java - 嵌入式 Tomcat 7 将 Spring 应用程序上下文传递给 servlet

java - 同时监听服务中的多个流

Java:是否需要在 Web 应用程序中使用同步网关来与 couchbase 服务器通信?

Couchbase 查询永远不会返回

spring-boot - Couchbase 的 Spring Data - 数据库中的计数元素

java - 如何使用Spring将请求转发到另一台服务器?

java - 目标编译

api - 您如何访问 NFL 的 API?

linux - Kaggle API 问题 "Could not find kaggle.json. Make sure it' 位于……”

php - Webservice/API 抓取另一个网站的屏幕截图? (已知的解决方案太慢)