neo4j EXTRACT有多个项目

时间:2014-10-15 09:07:00

标签: neo4j

我正在运行一个演示示例,此查询似乎给出了错误。

  

MATCH p =(node0:Movie)WHERE node0.title =“Apollo 13”RETURN EXTRACT(节点中的n(p)|(ID(n),LABEL(n)))

对于Extract语法, 2.0.0 的社区版 2.1.4 是否有任何更改?

错误是:

  

无效输入',':预期的空格,'。',节点标签,'[',“=〜”,IN,IS,'^','*','/','%','+ ',' - ','<','>',“< =”,“> =”,'=',“<>”,“!=”,AND,XOR,OR或')'(第1行,第96栏)   “MATCH p =(node0:Movie)WHERE node0.title =”Apollo 13“RETURN EXTRACT(节点中的n(p)|(ID(n),LABEL(n)))”                                                                                                   ^

2 个答案:

答案 0 :(得分:1)

请将您的RETURN语句更改为

return EXTRACT(n in nodes(p) | (ID(n) + " " + LABELS(n)) ) as extracted

更新:见@MichaelHunger的上述答案,他提出了另外两种方法让它与逗号分离一起工作。

答案 1 :(得分:0)

实际上,如果你想创建元组,你可以使用集合或地图文字:

顺便说一下。你没有路径,只有一个节点。 你拼错了LABELS函数。

MATCH p = (node0:Movie) 
WHERE node0.title = "Apollo 13" 
RETURN EXTRACT(n in nodes(p) | [ID(n),LABELS(n)])

MATCH p = (node0:Movie) 
WHERE node0.title = "Apollo 13" 
RETURN EXTRACT(n in nodes(p) | {id:ID(n),labels:LABELS(n)})