LOAD CSV FROM 'file:///relationships.tsv' as row
FIELDTERMINATOR '\t'
WITH row
MATCH (a:actor {id: row[2]}), (b:movie {id: row[0]}) MERGE (a)-[r:ACTED_IN]->(b)
Выглядит так: файл:
tt0015637 8 nm0166876 actor \N ["Bull Harding"]
tt2450056 2 nm0000616 actor \N ["Dr. Mc Millan"]
tt1053424 1 nm0000179 actor \N ["Remy"]
tt0062535 1 nm0176061 actor \N ["Ric"]
tt0016908 3 nm0384944 actor \N ["Capt. Blackwell"]
tt0020459 4 nm0176971 actor \N ["Pete"]
tt1300155 1 nm1497548 actor \N ["Moon Blake"]
строка [0] - это идентификатор фильма.row [2] - это идентификатор актера
Кроме того, я также хочу, чтобы row [3] был только актером.Иногда есть что-то вроде
tt0033839 5 nm0377613 director \N \N
Я хочу, чтобы строка [3] была только актером, которого я пытался
LOAD CSV FROM 'file:///relationships.tsv' as row
FIELDTERMINATOR '\t'
WITH row
MATCH (a:actor {id: row[2]}), (b:movie {id: row[0]}) MERGE (a)-[r:ACTED_IN]->(b)
WHERE row[3] == 'actor'
Но это дает мне Neo.ClientError.Statement.SyntaxError: Invalid input 'H ': ожидаемое' i / I '(строка 5, столбец 2 (смещение: 161)) "WHERE row [3] ==' actor '
Я добавил всех актеров, которые имеют одинаковые свойства name и idс фильмом.
Почему это не работает?