Cypher 쿼리에서 LIKE가 지원되지 않는 것으로 보입니다.CYPHER 쿼리의 LIKE 절
동일한 작업을 수행하는 다른 구조가 있습니까? 정규 표현식을 사용
start n = node(*) where n.Name LIKE('%SUBSTRING%') return n.Name, n;
Cypher 쿼리에서 LIKE가 지원되지 않는 것으로 보입니다.CYPHER 쿼리의 LIKE 절
동일한 작업을 수행하는 다른 구조가 있습니까? 정규 표현식을 사용
start n = node(*) where n.Name LIKE('%SUBSTRING%') return n.Name, n;
: 예컨대
http://neo4j.com/docs/developer-manual/current/#query-where-regex
start n = node(*) where n.Name =~ '.*SUBSTRING.*' return n.Name, n;
나는 정규 표현식이 답이 될지 걱정했다. Groans;) 그래도 단순한 것보다 더 강력 해졌습니다. – johnc
예, 저는 regexp에 대해서도 걱정이됩니다 만 지금은 직접적인 방법입니다. 'start n = node : your_index ('property : * SUBSTRING *')는 n.name, n;' – ulkas
을 리턴하고 리터럴 값 대신에 매개 변수를 사용하십시오 :'start n = node (*). * "}, 노드 (*)는 시작 절로 비 그래프에서 힌트를 표시합니다. (*) 여기서 n.Name = ~ {like}는 n.Name을 반환합니다. - 케이스를 사용하고 오히려 사용 ulkas '인덱스 조회 제안 –
당신이 대소 문자를 구분 필요
MATCH (n) WHERE n.name =~ '(?i).*SUBSTRING.*' RETURN n;
네,하지만 성능이 좋습니다! – ekkis
대단히 감사합니다. :) – JochemQuery
없음으로 정규 표현식 확인하려면 : the cypher refcard에
start n = node(*) where n.Name contains "substring" return n.Name, n;
이동하여 술어 부분을 아래로 스크롤합니다. 당신은 이것과 다른 유용한 것들을 발견 할 것입니다.
대소 문자를 구별하지 않으십니까? 소문자로 변환 :
start n = node(*) where lower(n.Name) contains lower("substring") return n.Name, n;
refcard는 북마크에 정말 편리한 것입니다 : http://neo4j.com/docs/cypher-refcard/current/ 그것은 모든 예를 들어 사업자 일치하는 문자열을 지원 나열합니다. –