1
为什么我在查询中使用方向关系时会得到重复结果?Neo4j在方向关系上复制结果
让我们遵循的例子使用的电影Neo4j的约定,我有一个董事,该公司必须在两个不同的电影两个角色,一个他导演和其他他是一个制片人:
create (M1:MOVIE {name:'movie 1'}),
(M2:MOVIE {name:'movie 2'}),
(D1:DIRECTOR {name:'director 1'}),
(D1)-[:PRODUCED]->(M2), (D1)-[:DIRECTED]->(M1)
让我们全体董事谁导演和制作电影
MATCH (m1:MOVIE)<-[DIRECTED]-(d1:DIRECTOR)-[PRODUCED]->(m2:MOVIE)
RETURN m1, d1, m2
结果被复制:
╒══════════════════╤═════════════════════╤══════════════════╕
│"m1" │"d1" │"m2" │
╞══════════════════╪═════════════════════╪══════════════════╡
│{"name":"movie 2"}│{"name":"director 1"}│{"name":"movie 1"}│
├──────────────────┼─────────────────────┼──────────────────┤
│{"name":"movie 1"}│{"name":"director 1"}│{"name":"movie 2"}│
└──────────────────┴─────────────────────┴──────────────────┘
其实这也是错的,我预计m1只能由导演导演,所以第二排是错的!
哦耶稣,太感谢你了..渐渐在它疯狂! – dendini
@dendini不客气! :) –