我正在使用Neo4j Import Tool导入一些节点,并尝试了解ID空间和标签如何协同工作,并影响与具有特定ID的节点匹配的cypher查询的行为。
例如,假设我将节点加载到两个ID空间ID_SPACE_X和ID_SPACE_Y中:
x_nodes.csv:
id:ID(ID_SPACE_X),field1:string,field2:long,:LABEL
1,"foo",42,A
y_nodes.csv:
id:ID(ID_SPACE_Y),field1:string,:LABEL
1,"bar",A
然后我执行以下Cypher查询:
MATCH (n:A {id:1}) RETURN n;
返回哪个节点?你能在cypher查询中表达ID空间,以便返回正确的节点吗?或者,分配给一个ID空间中的节点的标签必须是该ID空间专用的吗?
感谢您的帮助。
答案 0 :(得分:1)
ID空间仅对导入工具有意义。它们使工具能够正确检测唯一性错误。
它们与节点标签没有关联。
所以,你的例子是错误的。您告诉导入工具可以创建具有相同A
属性值的2个id
节点。这将导致创建2个此类节点。