Как я могу создать строку, содержащую фильтр на Neo4j Cypher
Мне нужно, чтобы строка содержала фильтр в Neo4J. Идея проста.
Хорошим примером является то, что мне нужно извлечь из базы данных людей всех людей, которые содержат от его имени подстроку автомобиля.
Как я могу это сделать?
Ответы
Ответ 1
Вы можете использовать регулярные выражения для соответствия части имени, например:
MATCH (n)
WHERE n.name =~ '.*car.*'
RETURN n
Если у вас есть метка "Человек", назначенная всем людям в вашей базе данных, запрос будет выглядеть следующим образом:
MATCH (n:Person)
WHERE n.name =~ '.*car.*'
RETURN n
Для получения дополнительной информации см. http://docs.neo4j.org/chunked/stable/query-where.html#_regular_expressions
Ответ 2
В качестве дополнительного обновления из neo4j 3.0 его можно более легко использовать:
MATCH(n)
WHERE n.name CONTAINS 'car'
RETURN n
(Отредактировано для включения Maciej в мой ответ, спасибо!)