Конкатенация строк для row.field из CSV - PullRequest
0 голосов
/ 10 июня 2019

Я пытаюсь динамически создать имя поля в CSV, которое я анализирую, используя FOREACH.

Я пытаюсь это:

// From Load CSV 
WITH row,
    ['NAME-A', 'NAME-B'] AS olink_panels
FOREACH (panel in olink_panels |
    MERGE (p:Plate      {plate_id:  row["Prefix $panel-Suffix"], 
                        name:       panel})
)

Neo4j анализирует код, но не создает никаких новых узлов. Я подозреваю, что он не оценивает переменную $panel.

1 Ответ

0 голосов
/ 10 июня 2019

Если вы пытаетесь использовать panel для создания имени заголовка, это должно сработать:

FOREACH (panel in ['NAME-A', 'NAME-B'] |
    MERGE (p:Plate     {plate_id:  row["Prefix " + panel + "-Suffix"], 
                        name:      panel})
)

Синтаксис $panel (со стартовым знаком доллара) следует использовать только в том случае, если panel был передан в запрос как параметр .И Сайфер в любом случае не будет выполнять подстановку параметров внутри строковых литералов.

...