提问者:小点点

Neo4j:语法错误


Neo4j查询电影数据库非在查询Neo4j-非IN查询

MATCH (actor:Actor {name:"Tom Hanks"} )-[:ACTED_IN]->(movies)<-[:ACTED_IN]-(coactor)
WITH collect(distinct coactor) as coactors
MATCH (actor:Actor)
WHERE actor NOT IN coactors
RETURN actor

在运行此查询时,我收到错误:

无效的输入'N':期望的空格、注释、节点标签、MapLitald、参数、关系模式, '(', '.', '[', "=~"、IN、STARTS、ENDS、CONTAINS、IS, '^', '*', '/', '%', ' ', '-', '=', "


共2个答案

匿名用户

我相信这是他们示例查询中的一个小错误。

WHERE actor NOT IN ...

语法不正确(尽管我不介意Cypher更新以允许它)。应该是

WHERE NOT actor IN ...

匿名用户

InverseFalcon有正确的答案,但请注意解析器会准确地告诉您错误的位置:第4行,第13列。

WHERE actor NOT IN coactors
            ^

它还告诉您此时可以预期的内容(包括IN),并且不包括Not