#neo4j #cypher
Вопрос:
Я хочу добавить новое свойство для всех этикеток, кроме названия этикетки, начинающегося с «x»
Я попытался выполнить приведенный ниже запрос cyper, но он не удался.
MATCH (n)
WITH DISTINCT labels(n) AS label
UNWIND label AS names
WITH names AS candidate
WHERE candidate =~ '^(.?$|[^I]. |I[^A].*)*'
CALL apoc.create.setProperty(labels(candidate),'link','')
YIELD node
return node
Ответ №1:
Вы не можете добавлять свойства к меткам. Вы можете добавлять свойства только к узлам, имеющим определенные метки.
MATCH (n)
WHERE NONE( label IN labels(n) WHERE label STARTS WITH ‘IA_’ )
SET n.myProperty = myValue
добавляет свойство к узлам, не имеющим метки, начинающейся с IA_