【发布时间】:2017-06-10 22:30:53
【问题描述】:
我有一个包含数千个节点的 Neo4j 数据库。
我正在使用此查询来查找在所需字段内包含一些文本的节点:
MATCH (n:MYNODE)
WHERE n.myfield CONTAINS {textToSearch}
RETURN n
ORDER BY n.myfield ASC
LIMIT 50
此查询有效,并返回按n.myfield 排序的前 50 个结果。
假设有 340 个节点与搜索条件匹配:返回前 50 个。有没有办法也返回总计数?我想要 50 个节点以及总数 (340) 用于显示目的。
我会做第二个这样的查询:
MATCH (n:MYNODE)
WHERE n.myfield CONTAINS {textToSearch}
RETURN count(n)
有没有办法避免第二个查询并将这个结果包含在第一个查询中? Neo4j 应该在第一次查询中将它们限制为 50 个之前找到所有 340 个节点,那么有没有办法在应用 LIMIT 子句之前拦截节点数并返回它?
【问题讨论】: