Предложение LIKE в запросе CYPHER Похоже, что LIKE не поддерживается в запросах Cypher. Есть ли какой-нибудь другой конструктор, который выполнил бы ту же задачу? Например: start n = node(*) where n.Name LIKE('%SUBSTRING%') return n.Name, n; Ответ 1 используя регулярные выражения: http://neo4j.com/docs/developer-manual/current/#query-where-regex start n = node(*) where n.Name =~ '.*SUBSTRING.*' return n.Name, n; Ответ 2 Начиная с версии 2.0, в предпочтительном синтаксисе используется MATCH. например. MATCH (n) where n.Name =~ '.*SUBSTRING.*' return n.Name, n; Ответ 3 Если вы хотите сделать регистр нечувствительным MATCH (n) WHERE n.name =~ '(?i).*SUBSTRING.*' RETURN n; Ответ 4 Нет необходимости в регулярных выражениях: start n = node(*) where n.Name contains "substring" return n.Name, n; Перейдите в cypher refcard и прокрутите вниз до раздела Predicates. Вы найдете это и другие полезные вещи. Хотите нечувствительность к регистру? Преобразовать в нижний регистр: start n = node(*) where lower(n.Name) contains lower("substring") return n.Name, n;
Ответ 1 используя регулярные выражения: http://neo4j.com/docs/developer-manual/current/#query-where-regex start n = node(*) where n.Name =~ '.*SUBSTRING.*' return n.Name, n;
Ответ 2 Начиная с версии 2.0, в предпочтительном синтаксисе используется MATCH. например. MATCH (n) where n.Name =~ '.*SUBSTRING.*' return n.Name, n;
Ответ 3 Если вы хотите сделать регистр нечувствительным MATCH (n) WHERE n.name =~ '(?i).*SUBSTRING.*' RETURN n;
Ответ 4 Нет необходимости в регулярных выражениях: start n = node(*) where n.Name contains "substring" return n.Name, n; Перейдите в cypher refcard и прокрутите вниз до раздела Predicates. Вы найдете это и другие полезные вещи. Хотите нечувствительность к регистру? Преобразовать в нижний регистр: start n = node(*) where lower(n.Name) contains lower("substring") return n.Name, n;