使用Spring Data Couchbase 2.2.0.RELEASE的Java应用程序...
从表示 Book
对象的JSON对象列表开始:
[
{id: 123, title: "Abc", category: "A"},
{id: 456, title: "Efg", category: "B"},
{id: 789, title: "Abc", category: "A"}
]
Book
对象数组插入到Couchbase中 . 之后,应用程序希望根据类别过滤器获取不同书籍 Headers 的列表 . 在一些Spring文档之后,我在 BookRepository
界面中找到了这个方法名:
List<Book> findDistinctTitleByCategory(String category);
但是,Spring创建的查询不包含 Headers 的 Distinct
子句 . 这是Spring发送到CB集群的最终查询,其中桶名称为 default
:
Executing N1QL query: {"statement":"SELECT META(`default`).id AS _ID, META(`default`).cas AS _CAS, `default`.* FROM `default` WHERE (`category` = \"A\")","scan_consistency":"not_bounded"}
我写的方法名称错了吗?
1 回答
SDC目前不支持distinct的查询派生 . 我已经创建了一个增强的票证here . 在此期间,您可以直接使用
@Query
而不是n1ql.selectEntity来解决,提供选择部分 .如果您只提取 Headers ,SDC支持projections .