我可以使用跳过、限制(和排序依据)来获取 UI 中特定页面的内容。例如渲染页面大小为 m 的第 n 页。UI 要求跳过 n*m 和限制 m。
但是,UI 想要为所有可能的页面生成链接。为此,我必须返回 neo4j 中可用的总行数。例如,对于总共 p 行,UI 将生成超链接 1,2,3... (p/m)。
在密码中使用跳过、限制时获得总行数的最佳(就性能而言)方法是什么?
我可以使用跳过、限制(和排序依据)来获取 UI 中特定页面的内容。例如渲染页面大小为 m 的第 n 页。UI 要求跳过 n*m 和限制 m。
但是,UI 想要为所有可能的页面生成链接。为此,我必须返回 neo4j 中可用的总行数。例如,对于总共 p 行,UI 将生成超链接 1,2,3... (p/m)。
在密码中使用跳过、限制时获得总行数的最佳(就性能而言)方法是什么?
通常,不建议您获取所有结果,因为您需要将大量图形提取到内存中。
你有两个选择:
将计数查询和您的实际查询合并为一个,但它会比您的跳过限制查询贵得多,在最坏的情况下,总计数/页面大小要贵得多
start n=node:User(name={username}) match n-[:KNOWS]->() with n,count(*) as total match n-[:KNOWS]->m return m.name, total skip {offset} 限制 {pagesize}