Neo4j Cypher match не находит узел, который должен - PullRequest
0 голосов
/ 27 апреля 2018

Добавив узлы со свойствами «id» и «name»

CREATE (s:subsystem {id: 12, name:"InjectEolCurrentCellSOCs"})
CREATE (s:subsystem {id: 13, name:"InjectEolCellCapacities"})
CREATE (s:subsystem {id: 14, name:"InjectEolCellResistances"})
CREATE (s:subsystem {id: 15, name:"InjectEolCellSOCs"})

Эта команда работает / находит узел и возвращает запрошенное значение: This command works/finds the node and returns the requested value

match(n {id:13}) return (n.name);

Но эта команда не находит соответствия: But this command does not find a match.

match(n {name:"InjectEolCellCapacities"}) return (n);

Может ли это быть связано с тем, что "InjectEolCellCapacities" и "InjectEolCellResistances" имеют одинаковые первые 13 символов?

1 Ответ

0 голосов
/ 27 апреля 2018

Если вы посмотрите на свое первое изображение, то увидите, что вы сохранили данные «InjectEolCellCapacities» (в конце есть пробел).

Так что, если вы хотите сопоставить его, вам следует использовать этот запрос: MATCH (n:subsystem { name:"InjectEolCellCapacities "}) RETURN n

Вы также можете искать все subsystem узлы, которые имеют свойство name, начинающееся с InjectEolCellCapacities, например: MATCH (n:subsystem) WHERE n.name STARTS WITH 'InjectEolCellCapacities' RETURN n

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...