1
이것은 매우 쉬운 작업인데도 고심하고 있습니다. 그래프 데이터베이스와 Neo4j에 능숙한 모든 사람들에게 정말 도움이되어 주셔서 감사합니다. CSV 파일에 NULL 값이있는이 MERGE 절을 파악할 수 없습니다. 나는 팀과 같은 일부 필드를 볼 수 있고 객실이 null 값이Neo4j에서 null 값을 사용하여 CSV 파일 가져 오기
LOAD CSV WITH HEADERS FROM 'file:///EXAMPLE.csv' AS row WITH row RETURN row
을 실행할 때
Example.csv 파일
Name,Lastname,Team,Room
AAAA,BBBB,CCCC,1111
DDDD,EEEE,FFFF,2222
GGGG,HHHH,,3333
IIII,JJJJ,KKKK,
LLLL,MMMM,CCCC,1111
NNNN,OOOO,,2222
가 포함되어 있습니다. Employees, Team 및 Room에 대한 노드를 만들고 싶습니다. 여기에 지금까지 작성한 코드가 있습니다.
CREATE CONSTRAINT ON (t:Team) ASSERT t.name IS UNIQUE;
CREATE CONSTRAINT ON (r:Room) ASSERT r.name IS UNIQUE;
LOAD CSV WITH HEADERS FROM 'file:///EXAMPLE.csv' AS row WITH row WHERE row.Room <> '' AND row.Room IS NOT NULL AND row.Team <> '' AND row.Team IS NOT NULL
CREATE (m:Employee {name: toUpper(row.Lastname), firstname: toUpper(row.Name)})
MERGE (r:Room { name:row.Room})
MERGE (t.Team {name:row.Team})
CREATE (m)-[:WORKS_IN]->(r)
CREATE (m)-[:WORKS_WITH]->(t);
나는 당신이 이미 null 값 일부 항목이 취소되고 촬영되지 않은 추측 같아요. 부서 또는 팀에 항목이 없는데도 직원들도 데이터베이스에 보관하고 싶습니다. null 인 경우 관계가 존재하지 않습니다.
저는 사전에 많은 도움과 많은 감사를드립니다.
감사합니다. Bruno! – jorzylicious
안녕하세요 @ jorzylicious 당신은 환영합니다! 또한이 답변으로 문제가 해결되면 체크 표시를 클릭하여 [수락] (https://meta.stackexchange.com/q/5234/179419)을 고려하십시오. 이는 해결책을 찾았으며 응답자와 자신에게 어느 정도의 평판을 제공한다는 것을 더 넓은 커뮤니티에 나타냅니다. 이를 수행 할 의무는 없습니다. –
나를 도울 수 있다면 한 가지 더 질문이 있습니다. 데이터 세트를 업로드 한 후 일부 이름에 쉼표 앞에 공백이있는 것으로 나타났습니다 (예 : AAAA, BBBB, CCCC, 1111 여기 AAAA). 그래서 Cypher MATCH (n : Employee {name : 'AAAA'}) RETURN n에서 쿼리해야 할 때 공간을 두어야합니다. 업로드하기 전에 공간을 확보하거나 포맷하는 방법을 피할 수있는 방법이 있습니까? –
jorzylicious