Как использовать apoc.load.csv в сочетании с apoc.create.node
Мне нужно импортировать файл CSV и создать узел из каждой записи. Я использую APOC, потому что предположительно я могу использовать столбец в файле CSV, чтобы определить каждый тип узла при создании узлов.
Это не работает:
CALL apoc.load.csv('FILE:///C:/Temp/Test/Test/Neo4jTest/import/Neo4j_AttributeProvenance.csv',{sep:","}) YIELD map
CALL apoc.create.node(['map.AttributeName'], {key:['map.NodeID']}) return count(*)
Это ошибка:
Procedure call inside a query does not support naming results implicitly (name explicitly using `YIELD` instead) (line 2, column 1 (offset: 124))
"CALL apoc.create.node(['map.AttributeName'], {key:['map.NodeID']}) return count(*)"
Я также попробовал этот синтаксис:
CALL apoc.load.csv('FILE:///C:/Temp/Test/Test/Neo4jTest/import/Neo4j_AttributeProvenance.csv',{sep:","}) YIELD map
CALL apoc.create.node(map.AttributeName, {key:map.NodeID}) return count(*)
2 ответа
Можете ли вы попробовать это:
CALL apoc.load.csv('FILE:///C:/Temp/Test/Test/Neo4jTest/import/Neo4j_AttributeProvenance.csv',{sep:","}) YIELD map
CALL apoc.create.node(['map.AttributeName'], {key:['map.NodeID']}) YIELD node
RETURN count(*)
Я просто добавляю YIELD
материал на узле создания.
ура
Вы забыли YIELD node
после звонка apoc.create.node
процедура. Попробуй это:
CALL apoc.load.csv('FILE:///C:/Temp/Test/Test/Neo4jTest/import/Neo4j_AttributeProvenance.csv',{sep:","}) YIELD map
CALL apoc.create.node(['map.AttributeName'], {key:['map.NodeID']}) YIELD node
return count(*)