Брайан Андервуд задал вопрос, который стимулировал мой ответ. Вы выполняете инструкции по строкам. Это создает 4 узла, 2 метки и 1 отношение. Neo4j не знает, что JFK
или MIA
относятся к заключительному оператору создания.
Подробно:
CREATE (JFK:Airport)
Это создает узел с меткой Airport
и без каких-либо свойств. JFK
- это идентификатор, используемый только в этом контексте исполнения.
CREATE (MIA:Airport)
Это создает еще один узел с меткой Airport
и без каких-либо свойств. MIA
- это идентификатор, используемый только в этом контексте исполнения.
CREATE (JFK)-[:ROUTE]->(MIA)
Это создает два дополнительных узлов с не этикеток, а также создает связь между ними.
Если вы выполните их все вместе, Neo4j будет использовать идентификаторыи MIA
и создать только 2 узла и 1 связь.
CREATE (JFK:Airport)
CREATE (MIA:Airport)
CREATE (JFK)-[:ROUTE]->(MIA)
Это делает то, что, как я думаю, вы ожидаете.
Кроме того, есть это все одно утверждение Cypher или несколько? –
Хороший вопрос. Если они были выполнены вместе, я уверен, что он будет использовать идентификаторы и создавать только два узла, добавить 2 метки и создать 1 связь. EDIT: просто протестирован, и это именно так. – ceej