Database/Neo4j

[Neo4j] Cypher Query 개념 정리 및 예제

bisi 2019. 4. 9. 12:17

Cypher Query 개념 정리 및 예제

 

1. 개념 

사용자가 그래프 데이터베이스에서 데이터를 저장하고 검색 할 수있게 해주는 Neo4j의 그래프 쿼리 언어

 

2. 용어정리 

  • 노드(Nodes) : 그래프 데이터 레코드
  • 관계(Relationships) : 노드를 연결하는 것
  • 속성(Properties) : 데이터 값의 속성값

 

3.  쿼리 예제 

 

3-1) CREATE

 

CREATE (길동:학생 { 이름 : "홍길동", 학년 : "3학년"})
CREATE (수학:과목 { 담당선생님 : "장발산", 경력 : "3년"})
CREATE (길동) -[:공부하다] -> (수학)

  • CREATE - Data 만드는 구문
  • ( ) - Node 단위
  • { } - 속성 추가 하기  
  • 변수:라벨 - 변수, 라벨로 node 구분 
  • [ ] - 관계 설명

 

 

 

3-2) MATCH 

MATCH (길동:학생) WHERE 길동.이름 = "홍길동" RETURN 길동;

  • MATCH - 노드(nodes), 관계(relationships)의 패턴을 구체화 시켜주는 구문
  • (길동:학생) - '길동'이라는 변수에 매칭되는 학생이라는 라벨을 가진 단순 노드 패턴 
  • WHERE - 결과에 제약하는 절 (기존 RDBMS에서 사용하는 WHERE절 의미와 동일)
  • 길동.이름 - 이름 속성과 "길동" 값을 비교
  • RETURN - 특정 결과를 요청할때 사용되는 구문

 

참고 : https://www.slideshare.net/maxdemarzi/neo4j-fundamentals

다음 포스팅에는 Spring에서 실제 구현한 예제를 살펴보겠습니다.

'Database > Neo4j' 카테고리의 다른 글

Neo4j 다운로드 및 설치 가이드  (0) 2019.04.14
[Neo4j] Graph Database 개념  (0) 2019.04.08