Получить значение метки виртуального узла neo4j apoc - PullRequest
1 голос
/ 10 июня 2019

Как получить значение метки виртуального узла, созданного apoc proc?Следующее возвращает идентификатор узла и ноль для значения метки

OPTIONAL MATCH (cd:Day) WHERE cd.yyyymmdd= 20190609 
call  apoc.create.vNode(['Day'],{yyyymmdd:20190609})  yield node as vd
WITH Coalesce(cd, vd) as td  
return ID(td) as id, td.yyyymmdd as f

1 Ответ

2 голосов
/ 10 июня 2019

Виртуальные узлы / отношения в основном используются для визуализации.

Сам Cypher не может получить к ним доступ. В apoc имеется множество функций дляполучить доступ к их свойствам, меткам и rel-типам.

Вы можете использовать apoc.any.property для доступа к свойству для виртуальных и реальных узлов, отношений.

OPTIONAL MATCH (cd:Day) WHERE cd.yyyymmdd= 20190609 
CALL  apoc.create.vNode(['Day'],{yyyymmdd:20190609})  YIELD node AS vd
WITH Coalesce(cd, vd) AS td  
RETURN ID(td) AS id, apoc.any.property(td, 'yyyymmdd') AS f
...