2013-05-08 2 views
0

이전의 후속 작업으로 question 인덱스 쿼리를 수행 할 때 논리 연산자 AND, OR 및 NOT을 사용하는 방법을 알고 싶습니다.논리 연산자를 사용하는 Cypher 쿼리

것 같은 사이퍼 쿼리 보일 것 같은 책 클럽 데이터베이스 시나리오를 사용 :

  1. 가 (소설 논픽션) 또는 참조 책을 읽는 모든 독자를 찾기?
  2. 읽은 모든 독자 찾기 (픽션 또는 논픽션) 아니요 참고 도서?

나는이 두 예제가 다른 시나리오를 다루기에 충분한 재료를 제공해야한다고 확신한다.

편집 : 이것을 증명하기 위해 Neo4j Console 시나리오를 만들었습니다.

답변

0

처음 사용하는 경우이 기능을 사용해보십시오. 둘째 비슷한 라인에서 수행 할 수 있습니다 -

start b1=node:MyBookIndex('Genre:Fiction'), 
     b2=node:MyBookIndex('Genre:Non-Fiction'), 
     b3=node:MyBookIndex('Genre:Reference') 
match b1-[a?:HasRead]-r, 
     b2-[b?:HasRead]-r, 
     b3-[c?:HasRead]-r 
where (a <> null and b <> null) or (c <> null) 
return r.ReaderName 

(참고 : 테스트하지) 나는 쿼리를 실행하기 위해 Neo4j 웹 관리 콘솔의 데이터 브라우저 탭을 사용하여 다음과 같은 얻을 작동하지 않았다

+0

: 를 > 잘못된 쿼리 >이 패턴은 현재 지원되지 않습니다. 이러한 패턴 요소는 여러 개의 이중 선택 경로의 일부이며 허용되지 않습니다. r1, F, r2 –

+0

이전에 언급 한''r1, F, r2 ''는 내 데이터를 사용한 테스트에서 나온 것임을 기억하십시오. @ Gopi의 답장에서 나온 예제를 사용하면''a, r, b "'가 보일 것입니다. –

관련 문제