2014-12-20 3 views
0

Я хочу удалить узел, если узел не имеет relationshops и возвращает истину, в противном случае возвращают ложныеNeo4j недопустимый синтаксис условного

match (p:Type {id:72})-->(x) 
RETURN 
CASE count(x) 
WHEN 0 THEN DELETE p 'true' 
ELSE 'false' 
END AS deleted; 

я всегда получаю неверный синтаксис. Возможно ли это в cypher?

+0

случае это просто вычислить выражение не условное предложение –

ответ

0

Чтобы найти узлы, не имеющие отношения нужно использовать OPTIONAL MATCH и проверить нуль после WITH:

match (p:Type {id:72}) 
optional match (p)-[r]-() 
with p, r 
where r IS null 
delete p 
1

Или

match (p:Type {id:72}) 
where not exists ((p)--()) 
delete p 
Смежные вопросы