2017-04-10 57 views
0

我有两个节点'member'和'book'。会员和书籍与“ISSUED_TO”关系相关联。 现在,在获取成员时,我可以使用Collect获取发给成员的所有书籍的列表。Neo4j - 获取节点集合以及关系属性

我需要进一步扩展以上查询 - 我的“ISSUED_TO”关系有一个属性“Issue_Date”。

我需要的是与ISSUE_DATE沿各会员书单。

回答

0

我已经用其他关系修改了这个数据集,查询保持不变。

enter image description here

假设你有名字 “ISSUE_DATE” 对现有关系的关系属性,你可以撰写你的查询作为....

[旧版本]

enter image description here

enter image description here

+0

号这并不需要什么 - 所有发给成员1的书籍可以有不同的发行日期。 预期的结果可以是 会员1 第一册2017年1月1日 Book2的2017年5月1日 BOOK3 2017年5月1日 会员2 第一册2016年7月12日 Book5两个2017年12月1日 – user1872862

+0

感谢你的回复。 查询结果显示成员重复。 如果您删除r.issue_date并应用 - collect(b)结果显示每个会员帐簿已发出。 预计类似的结果,但随着书的发行日期。 显示的新结果应由成员分组。 – user1872862

1

如果您使用的Neo4j 3.1+,你可以使用map projection包括发行日期与书的属性一起:

match (b:Book)-[r:ISSUED_TO]->(m:Member) 
return m, collect(b {.*, Issue_Date:r.Issue_Date}) as booksIssued 
相关问题