小编LDB*_*LDB的帖子

Neo4j - 来自Ruby on Rails的分页

使用Neo4j时,Ruby on Rails的最佳分页选项是什么?我期待与Kaminari,will_paginate gem甚至Bootstrap分页.有什么建议?

neo4j neo4j.rb

5
推荐指数
2
解决办法
212
查看次数

Neo4j - 不知道如何改进密码查询

我有这个查询返回非常快,0.5秒并返回所有303个预期的记录.注意:"Woka"在这里的意思是"书".

MATCH (p:Publisher)-[r:PUBLISHED]->(w:Woka)<-[s:AUTHORED]-(a:Author),
(l:Language)-[t:USED]->(w:Woka)-[u:INCLUDED]->(b:Bisac) 
WHERE (a.author_name = 'Camus, Albert') 
RETURN w.woka_id as woka_id, p.publisher_name as publisher_name, w.woka_title as woka_title, a.author_name as author_name, l.language_name as language_name, b.bisac_code as bisac_code, b.bisac_value as bisac_value 
ORDER BY woka_id;
Run Code Online (Sandbox Code Playgroud)

我想添加更多信息,例如说明.我在语言和描述以及描述和书籍(Woka)之间创建了描述节点并且创建了关系.下面的查询将所有描述都返回为null,但仅返回60个记录而不是303.这是因为并非所有书籍都有描述.执行时间仍然可以,0.3秒.

MATCH (p:Publisher)-[r:PUBLISHED]->(w:Woka)<-[s:AUTHORED]-(a:Author), 
(l:Language)-[t:USED]->(w:Woka), (b:Bisac)<-[u:INCLUDED]-(w:Woka),
(d:Description)-[v:HAS_DESCRIPTION]-(w) 
WHERE (a.author_name = 'Camus, Albert') 
RETURN w.woka_id as woka_id, p.publisher_name as publisher_name, w.woka_title as woka_title, a.author_name as author_name, l.language_name as language_name, b.bisac_code as bisac_code, b.bisac_value as bisac_value, d.description as description 
ORDER BY woka_id;
Run Code Online (Sandbox Code Playgroud)

但是我知道从结果集中遗漏了一些记录,50和303之间的差异确实有描述.我使用OPTIONAL构建另一个查询,但是这个(如下所示)永远不会返回,永远运行.

MATCH (p:Publisher)-[r:PUBLISHED]->(w:Woka)<-[s:AUTHORED]-(a:Author),
 (l:Language)-[t:USED]->(w:Woka)-[u:INCLUDED]->(b:Bisac) 
OPTIONAL MATCH (d:Description)-[v:HAS_DESCRIPTION]-(w:Woka)-[:AUTHORED]-(a:Author) …
Run Code Online (Sandbox Code Playgroud)

neo4j cypher

1
推荐指数
1
解决办法
92
查看次数

标签 统计

neo4j ×2

cypher ×1

neo4j.rb ×1