2013-04-24 10 views
0

내 경우에는 사용자를 나타내는 노드가 여러 개 있는데, 사용자가 을 나타내며 읽고있는 책과 관계가 있습니다.Neo4j - 노드 배열에서 검색

이 사용자는 출신 국가를 기반으로 출신 국가를 나타내는 등록 정보를 가지고 색인에 추가했습니다.

하나의 국가에서 사용자를 찾기 위해 색인을 검색하고 거기에서 사람들이 더 많이 읽는 도서를 나열하고 그룹화하여 정렬하고 싶습니다.

나에게 도움을 줄 수 있습니까? 나는 인덱스에서 사용자를 받고 몇 가지 문제가, 쿼리 귀하의 설명에 따라 가정의

+1

Cypher를 사용하고 있습니까? – fynn

답변

1

커플하고 있어요 :

  • 사용자가 country 속성이를, 그것은 예를 들어, 포함 값으로 France 당신은 인덱스 users라고하고 당신은 사용자와 책 READ
  • 책 노드가

을 기반으로 title 속성이있다 연결이

  • 관계 유형을 사용자 노드의 country 속성을 저장
  • 사이퍼 쿼리는 다음과 같이 가정합니다.

    start user=node:users(country='France') 
    match user-[:READ]->book 
    return book.title, count(*) as rank 
    order by rank desc 
    limit 20  
    

    ide 참고 사항 : 이런 종류의 질문을하는 가장 좋은 방법은 http://console.neo4j.org에 샘플 그래프를 작성하고 SO를 공유하는 것입니다.