반응형
Recent Posts
Recent Comments
관리 메뉴

개발잡부

Neo4j Cypher 주요 예약어 본문

카테고리 없음

Neo4j Cypher 주요 예약어

닉의네임 2025. 12. 11. 15:00
반응형

노드 / 관계 패턴 매칭

키워드 의미
MATCH 그래프에서 패턴을 검색할 때 사용 (SELECT에 해당)
OPTIONAL MATCH 해당 패턴이 없어도 null 로 반환 (SQL의 LEFT JOIN 느낌)
MERGE 패턴이 없으면 생성하고, 있으면 매칭 (SQL의 UPSERT 느낌)
CREATE 무조건 새 노드/관계를 생성
DELETE 노드/관계 삭제
DETACH DELETE 관계가 있어도 강제 삭제 (ON DELETE CASCADE와 비슷)

 

 

조건 / 필터링

키워드 의미
WHERE 패턴 뒤에서 조건 필터링
AND / OR / NOT 논리 조건
IN SQL의 IN과 동일
STARTS WITH / ENDS WITH / CONTAINS 문자열 검색
=~ 정규표현식 매칭

 

 

반환 / 정렬 / 페이징

키워드 의미
RETURN 결과 반환
DISTINCT 중복 제거
ORDER BY 정렬
SKIP offset
   
LIMIT limit

 

 

SET / REMOVE

키워드 의미
SET 노드/관계의 속성 변경 또는 추가
REMOVE 속성 또는 라벨 제거

 

 

WITH (중간 결과 전달)

키워드 의미
WITH 쿼리를 여러 단계로 나누고 값 전달 (SQL의 CTE 느낌)
WITH DISTINCT 중복 제거 후 다음 파이프로 전달
CALL 저장 프로시저 호출 (APOC 등)

 

 

UNWIND (리스트 펼치기)

키워드 의미
UNWIND 리스트를 행(row) 형태로 펼침

 

 

관계방향지정

표현 의미
()-[:R]->() 방향 있는 관계
<-[:R]-() 반대 방향
()-[:R]-() 방향 무시

 

 

고급 키워드(APOC 포함)

트랜잭션 / 프로시저

키워드 의미
CALL { ... } 서브쿼리 실행
YIELD CALL 결과 중 일부 컬럼 선택
apoc.merge.node MERGE의 확장 기능
apoc.periodic.commit 대량 데이터 처리
반응형
Comments