首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SDN查询带来额外的记录

SDN查询带来额外的记录
EN

Stack Overflow用户
提问于 2015-10-19 20:02:04
回答 1查看 30关注 0票数 0

我发现我的SDN设置有一个奇怪的问题(可能)。我从Neo4j浏览器控制台执行的cypher查询返回2个节点-

代码语言:javascript
复制
MATCH (bk:Book) WHERE bk.bookTitle =~ '(?i).*robert.*' OR bk.authors =~ '(?i).*robert.*'  return bk;

以上是我所期望的。

然而,当我在我的存储库的一个搜索方法的查询注释中使用相同的查询时,SDN倾向于获取存储库中的所有节点-以下是我在存储库i/f中的方法:

代码语言:javascript
复制
    @Query("MATCH (bk:Book) WHERE bk.bookTitle =~ '(?i).*{0}.*' OR bk.authors =~ '(?i).*{0}.*'  return bk;")

...
    public Iterable<Book> searchBooksByProfileData(String keyword);
....

更多细节- 1.我使用SDN - 3.4.0发布版本,我的服务器是v2.1.6。2.我的测试用例似乎使SDN在我验证我的日志时触发了正确的查询。

只是想知道这是怎么发生的-我遗漏了什么,或者来自最新服务器的REST i/f不能正确解释来自旧SDN客户端的请求?

EN

回答 1

Stack Overflow用户

发布于 2015-10-26 23:41:53

这部分

代码语言:javascript
复制
'(?i).*{0}.*'

作为正则表达式,其中{0}是出现次数。您需要在参数中传入整个正则表达式:

代码语言:javascript
复制
WHERE bk.bookTitle =~ {0}

其中{0}将具有值"(?i).*robert.*"

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33213889

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档