Création de relations à la chaîne

89 views
Skip to first unread message

cdu8...@gmail.com

unread,
Apr 24, 2015, 11:43:02 AM4/24/15
to neo...@googlegroups.com
Bonjour,

J'ai un fichier .csv avec en colonnes des serveurs et des scripts.



Et je souhaite créer les relations suivantes :

(AALTO)-[:Execution]->(Script1)-[:Puis]->(Script2)-[:Puis]->(Script3)-[:Puis]->(Script4)

ABBOTT-[:Execution]->(Script5)-[:Puis]->(Script6)-[:Puis]->(Script7)

ABBOUD-[:Execution]->(Script8)-[:Puis]->(Script9)-[:Puis]->(Script10)-[:Puis]->(Script11)-[:Puis]->(Script12)

J'ai vu qu'avec un script telle que celui-ci je peux générer une chaîne de relations :

MATCH (script:Script)
WITH script
ORDER BY script.script
WITH COLLECT(script) AS scripts
FOREACH(i in RANGE(0, length(scripts)-2) |
FOREACH(script1 in [scripts[i]] |
FOREACH(script2 in [scripts[i+1]] |
CREATE UNIQUE (script1)-[:NEXT]->(script2))))

Mais je bute sur comment faire pour réaliser l'interco entre les serveurs et le 1er script associé et sur comment réitérer l'opération pour les serveurs suivants.
Merci pour votre aide.

Sincèrement,

Frédéric

scripts-test.csv

Emmanuel Tavernier

unread,
Apr 10, 2017, 11:37:57 AM4/10/17
to Neo4jFr
je but sur le même problème, avez vous trouvé la réponse ?

Sylvain Roussy

unread,
Apr 14, 2017, 7:40:53 AM4/14/17
to Neo4jFr
Bonjour 
alors pour résoudre cela j'ai fait ceci :

D'abord j'ai rattaché mes scripts à mes serveurs :

LOAD CSV WITH HEADERS FROM "file:///scripts-tests.csv" AS entry
FIELDTERMINATOR
';'
MERGE
(s:Serveur{serveur: entry.Serveur}) CREATE (s)<-[:SCRIPT_FOR]-(sc:Script{script:entry.Script})


Ensuite, je n'ai plus qu'à itérer sur mes serveurs :

MATCH (n:Serveur)<-[:SCRIPT_FOR]-(sc:Script)
WITH n
,sc  ORDER BY n.serveur,sc.script
WITH n
,collect(sc) as scripts
FOREACH
(i in RANGE(0, length(scripts)-2) |

  FOREACH
(script1 in [scripts[i]] |
    FOREACH
(script2 in [scripts[i+1]] |
      CREATE UNIQUE
(script1)-[:NEXT]->(script2))))



J'espère avoir bien compris la question et que cela a pu vous aider.

Bonne journée,

Sylvain
Reply all
Reply to author
Forward
0 new messages