Как изменить ELABEL на AgensGraph? - PullRequest
0 голосов
/ 28 июня 2019

Я хочу изменить elabel of edge.

agens=# create (:v1{id:1})-[:e1{id:3}]->(:v1{id:2});
GRAPH WRITE (INSERT VERTEX 2, INSERT EDGE 1)
agens=# match ()-[r1:e1{id:3}]->() set r1:v2 remove r1:v1;
ERROR:  syntax error at or near ":"
LINE 1: match ()-[r1:e1{id:3}]->() set r1:v2 remove r1:v1;
                                         ^

Но на нем есть ошибка.

Как изменить ELABEL на AgensGraph?

1 Ответ

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

В AgensGraph невозможно изменить метку по краю.

Но вы можете попробовать добавить новое ребро с такими же свойствами и удалить старое ребро.

agens=# create (:v1{id:1})-[:e1{id:3}]->(:v1{id:2});
GRAPH WRITE (INSERT VERTEX 2, INSERT EDGE 1)
agens=# match p = ( (n1)-[r1]->(n2) ) return p;
                               p                               
---------------------------------------------------------------
 [v1[3.1]{"id": 1},e1[4.1][3.1,3.2]{"id": 3},v1[3.2]{"id": 2}]
(1 row)

agens=# match  (n1)-[r1:e1{id:3}]->(n2)
        create (n1)-[r2:e2]->(n2)
        set    r2 = properties(r1)
        delete r1;
GRAPH WRITE (INSERT VERTEX 0, INSERT EDGE 1, DELETE VERTEX 0, DELETE EDGE 1, UPDATE PROPERTY 1)
agens=# match p = ( (n1)-[r1]->(n2) ) return p;
                               p                               
---------------------------------------------------------------
 [v1[3.1]{"id": 1},e2[5.1][3.1,3.2]{"id": 3},v1[3.2]{"id": 2}]
(1 row)
...