Создание отношений в Cypher между узлами с общими свойствами со значениями 1 и 1.0 - PullRequest
0 голосов
/ 03 мая 2019

У меня есть свойства двух разных типов узлов. Свойства 1 и 1,0. Я хочу связать эти узлы отношениями, основанными на этом общем свойстве. Есть около 45 миллионов узлов для подключения еще к 1,2 миллионам узлов. Я сгенерировал следующий запрос для этого, но он продолжает возвращать (no changes, no records). Кто-нибудь знает лучший способ сделать это? Запрос ниже.

MATCH (p: Post), (t: Thread) ГДЕ СУЩЕСТВУЕТ (p.post_reply_number) И СУЩЕСТВУЕТ (t.pos) И p.post_reply_number = t.pos CREATE (p) - [r: FIRST_POST] -> (t)

1 Ответ

0 голосов
/ 03 мая 2019

Я думаю, типы данных не согласованы.Одним из свойств является string, а другим - double (float).Вы можете использовать функцию toFloat для преобразования строки во float, тогда ваш запрос будет работать.

MATCH (p:Post),(t:Thread) 
WHERE EXISTS (p.post_reply_number) 
 AND EXISTS (t.pos) 
 AND toFloat(p.post_reply_number)=t.pos 
CREATE (p)-[r:FIRST_POST]->(t)

Я попытался создать примеры узлов / свойств, используя типы данных int (post_reply_number) и float (pos), и ваш запрос работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...