我在编写Cypher查询时遇到问题。我有一个Patient
节点的Visit
标签。这些Visits
中的每一个都具有有关访问的数据作为关系。我正在构建导出功能,您可以在其中导出有关每个患者就诊的信息。现在我的查询是MATCH (p:Patient {patient_id: "some_id"})-[:GOES_TO]-(v:Visit)
OPTIONAL MATCH (v)-->(data)
RETURN v, data {.*}
我想返回单行,其中包含每次访问的所有关系数据。现在,此查询返回一行,该行包含一次访问,然后返回每个关系属性。因此,例如,在12/3/2015
上进行的访问将返回包含该日期和用药信息的行,但还会返回包含该日期和重要信息的新行。
任何帮助将不胜感激!
答案 0 :(得分:0)
听起来像您这里只需要一个collect()即可。这对您有用吗?
MATCH (p:Patient {patient_id: "some_id"})-[:GOES_TO]-(v:Visit)
OPTIONAL MATCH (v)-->(data)
RETURN v, collect(data {.*}) as data