[ОБНОВЛЕНО]
Вы можете найти узел по его собственному идентификатору, , если узел никогда не удаляется, и вы используете тот же экземпляр базы данных neo4j, который сгенерировал этот идентификатор .
Когда экземпляр базы данных создает узел, он назначает узлу собственный идентификатор, который экземпляр не использует в то время. Когда экземпляр базы данных удаляет узел, он может назначить собственный идентификатор удаленного узла другому узлу, созданному позднее.
При условии соблюдения вышеуказанных критериев:
Еслиузел уже существует, вы можете получить его собственный идентификатор один раз (как показано ниже), а затем жестко закодировать собственный идентификатор в запросах, которые в нем нуждаются. (В этом случае собственный идентификатор не изменится, даже если впоследствии вы удалите свойство name
.)
MATCH (startTime:timestamp {name: "Time Stamp"})
RETURN ID(startTime);
Вы можете получить собственный идентификатор узла во время созданияэто (как показано ниже), а затем жестко закодировать собственный идентификатор в запросах, которые в нем нуждаются. (В этом случае нет необходимости даже указывать свойство name
.)
CREATE (startTime:timestamp {time: 0239213021312})
RETURN ID(startTime);
Если собственный идентификатор, скажем, 123, вы можете получить узелпозже:
MATCH (n)
WHERE ID(n) = 123
...
С другой стороны, если узел может быть удален, то у него должно быть какое-то свойство с уникальным значением, к которому вы можете обратиться.