Cypher MATCH — 관계를 탐색하는 쿼리
Cypher MATCH — 관계를 탐색하는 쿼리
MATCH 는 Cypher 에서 그래프에서 패턴을 찾아 노드와 관계를 검색하는 핵심 절이에요. SQL 의 SELECT ... WHERE 에 가깝지만, 패턴을 화살표로 표현하는 게 특징이에요.
기본 문법
MATCH (n)
RETURN n
모든 노드를 반환해요. (n) 은 노드 변수 n 을 나타내요.
라벨·프로퍼티로 필터링
MATCH (p:Person {name: 'Tom Hanks'})
RETURN p
라벨 Person 이고 name 프로퍼티가 Tom Hanks 인 노드를 찾아요.
관계 탐색
MATCH (p:Person)-[:ACTED_IN]->(m:Movie)
RETURN p.name, m.title
Person 이 ACTED_IN 관계로 연결된 Movie 를 찾아요. 화살표 -> 가 관계의 방향을 나타내요.
가변 길이 관계 (다홉 경로)
MATCH (a:Person)-[:KNOWS*1..3]->(b:Person)
RETURN a.name, b.name
KNOWS 관계를 1~3홉 따라가는 경로를 찾아요. 소셜 네트워크·지식 그래프 탐색에 유용해요.
MATCH 후 작업
RETURN: 결과 반환.WHERE: 추가 조건 필터(속성 비교, 관계 검사).CREATE/MERGE: 새 노드·관계 생성 또는 존재 시 병합.