Как получить сумму краевого поля в базе данных графа, используя gremlin?
У меня есть две названные вершины - UserName и CompanyName. Всякий раз, когда пользователь посещает какую-либо компанию, я увеличиваю граничное поле (то есть pageVisit). для отдельных результатов я получаю эти значения pageVisit, но как я могу получить сумму всех пользовательских посещений страницы?
Я хочу показать общее количество посещений страницы на странице компании, я не нашел способа добавить значения краев.
1 ответ
Решение
Вы можете использовать шаг sum():
gremlin> graph = TinkerGraph.open()
==>tinkergraph[vertices:0 edges:0]
gremlin> vUser1 = graph.addVertex("UserName","user1")
==>v[0]
gremlin> vUser2 = graph.addVertex("UserName","user2")
==>v[2]
gremlin> vCompany = graph.addVertex("CompanyName","Company")
==>v[4]
gremlin> vUser1.addEdge('visits',vCompany,'pageVisit',10)
==>e[6][0-visits->4]
gremlin> vUser2.addEdge('visits',vCompany,'pageVisit',20)
==>e[7][2-visits->4]
gremlin> g = graph.traversal()
==>graphtraversalsource[tinkergraph[vertices:3 edges:2], standard]
gremlin> g.V(vCompany).inE('visits').values('pageVisit').sum()
==>30