Neo4J查询以联接多个匹配项以返回结果
当我运行下面的查询时 查询1正在生成返回所有文档的文档的所有类别标签的结果。注意:一个文档可以有多个类别,因此可以随时收集它们Neo4J查询以联接多个匹配项以返回结果,neo4j,cypher,Neo4j,Cypher,当我运行下面的查询时 查询1正在生成返回所有文档的文档的所有类别标签的结果。注意:一个文档可以有多个类别,因此可以随时收集它们 START doc = node:entities(type = "document-link") MATCH category-[:category]-doc<-[:`document-link`]-id RETURN doc.title as title, COLLECT(COALESCE(category.category, "")) as
START doc = node:entities(type = "document-link")
MATCH category-[:category]-doc<-[:`document-link`]-id
RETURN
doc.title as title,
COLLECT(COALESCE(category.category, "")) as categories
START doc=节点:实体(type=“文档链接”)
匹配category-[:category]-doc在第三个查询中,您可以匹配category和语言之间的关系,而在前两个查询中没有这样做。这个怎么样:
START doc = node:entities(type = "document-link")
MATCH category-[:category]-doc<-[:`document-link`]-id
MATCH doc-[:language]-lan
RETURN
doc.title as title,
lan.language as language,
COLLECT(COALESCE(category.category, "")) as categories
START doc=节点:实体(type=“文档链接”)
匹配类别-[:类别]-博士认为这有效。顺便说一句,我在neo4j上进行调试,我试图修改现有的密码,但当我在匹配中使用“?”时,调试器会抱怨,建议在结果中也使用可选匹配“?”或“!”也会失败,但它在代码中起作用。您知道原因吗?例如,类别可以有空字段,或者标题可能为空,我可能想插入一些内容而不是空字段。提前感谢您的帮助。如果有效,请接受并投票回答:)。至于这个问题,我不能完全肯定。据我所知,甚至不允许使用空值字段。也许你可以在stackoverflow上发布你的附加问题:)的?在比赛中!对于版本1.9及之前的版本,属性上的语法已过时,请更新到最新版本,如2.1.6
START doc = node:entities(type = "document-link")
MATCH category-[:category]-lan-[:language]-doc<-[:`document-link`]-id
RETURN
doc.title as title,
lan.language as language,
COLLECT(COALESCE(category.category, "")) as categories
START doc = node:entities(type = "document-link")
MATCH category-[:category]-doc<-[:`document-link`]-id
MATCH doc-[:language]-lan
RETURN
doc.title as title,
lan.language as language,
COLLECT(COALESCE(category.category, "")) as categories