Как указать, какую запись использовать при создании узлов с оператором UNWIND в Neo4j? - PullRequest
0 голосов
/ 21 февраля 2019

Я использую Neo4j вместе с драйвером Javascript и пытаюсь создать некоторые узлы с помощью набора параметров, есть два типа записей.

Первая запись


testObject = {

 created: timeStamp,
 uuid: uid,
 finalScore: correctNum;
}

Это центральный узел, вокруг которого я хочу иметь множество узлов, имеющих одинаковую структуру (определено ниже).


Вторая запись


responseObject = {

 response: finalAnswer,
 responseTime: responsetime,
 backgroundNoise: noise,
}

В параметрах есть много таких записей, каждая из которых имеет разные значения, такие как значение ответа, время ответа и фоновый шум.

Мой вопрос


UNWIND $responses AS responseObject CREATE (t:Test) SET t = responseObject

Что яхотел бы сделать, это выбрать, какая запись будет использоваться при создании узлов и установке свойств.Согласно документации записей, запись является формой упорядоченной карты, и поэтому содержащиеся в ней значения могут быть доступны с помощью либо позиционного индекса, либо текстового ключа .Можно ли это сделать на уровне запросов при использовании UNWIND?Например, responseObject [2] будет использовать третью запись вместо первой.

1 Ответ

0 голосов
/ 21 февраля 2019

Если вы хотите получить только один элемент из списка, используйте индексирование, а не UNWINDUNWIND вы получите все элементы списка.

Например, чтобы создать узел только с третьим элементом $responses:

CREATE (t:Test) SET t = $responses[2]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...