Вы можете поместить свойство встроенным в существующий шаблон:
MATCH (n)
WHERE EXISTS (n.name)
RETURN n.name AS name, EXISTS ((n)-[:MARRIED {married_date:'2020-03-20'}]->()) AS is_married
Для более сложной фильтрации (фильтрация по диапазону или пре / суффиксы или что-либо еще, что не может быть захвачено встроенным в сам шаблон), нам нужно взглянуть на другие варианты.
Возможно, лучший запасной вариант - использование функций предикатов вместо понимания шаблона .
Понимание паттернов дает нам возможность проецировать отношения в список, а функция предиката any()
может проверить, есть ли какие-либо из этих отношений, подходящих для сложного предиката, например:
MATCH (n)
WHERE EXISTS (n.name)
RETURN n.name AS name, any(rel in [(n)-[r:MARRIED]->() | r] WHERE rel.married_date STARTS WITH '2020-03') AS is_married_in_march_2020