Опитвам се да заредя *.csv файл в neo4j и в същия оператор за зареждане да разделя реда (който няма разделители, но има зададено местоположение за данните, от които трябва да създам възли). Искам да използвам функцията substring, но не мога да разбера как да я накарам да работи. Данните се четат като един ред:
0067011990999991958051507004+68750+023550FM-12+038299999V0203301N00671220001CN9999999N9+00001+99999999999
Опитах да използвам следния код:
LOAD CSV WITH HEADERS FROM "file:/c:/itw/Ltemps.csv" AS line
WITH line
WHERE line.year IS split((substring(line, 15, 19))) and line.temp IS split((substring(line, 88, 92))) and line.qlfr IS split((substring(line, 87, 88))) and line.qual IS split((substring(line, 92, 93)))
MERGE (y:Year {year:line.year})
MERGE (t:Temp {temp:line.temp})
MERGE (f:Qlfr {qlfr:line.qlfr})
MERGE (q:Qual {qual:line.qual})
CREATE (y)-[r:HAS_TEMP]->(t);
Търся да получа 4 възела: година, темп (абсолютна стойност), квалификатор (положителен или отрицателен символ) и число за качество. Индексите за това къде се намират данните в низа трябва да са точни.