Gremlin 언어 (Groovy 하위)에서 나는 ;
, &&
의 동작과 사용법에 대해 조금 혼란스러워합니다. GremlinClient REPL에서 예를 들어 Gremlin의 시퀀스 문에 대한 구문은 무엇입니까?
gremlin> graph = TitanFactory.open("../conf/gremlin-server/titan-cassandra-server.properties")
==>standardtitangraph[cassandra:[localhost]]
gremlin> g = graph.traversal(standard())
==>graphtraversalsource[standardtitangraph[cassandra:[localhost]], standard]
gremlin> g.V().count()
==>0
gremlin> g.addV(label, 'Subject', 'ident', '1') ; g.addV(label, 'Subject', 'ident', '2')
==>v[4304]
gremlin> g.V().count()
==>1
확인을, 그래서 ;
작동하지 않았다. &&
은 어떨까요? 그것은 내가 원하는 의미를 가지고 있지는 않지만 그것을 통해 작업 할 수 있습니다. :
gremlin> g.V().count()
==>0
gremlin> g.addV(label, 'Subject', 'ident', '1') && g.addV(label, 'Subject', 'ident', '2')
==>true
gremlin> g.V().count()
==>2
음 ... 그건 괜찮습니다. 이제는 명령 시퀀스의 일부로 변수를 바인딩 할 수 있어야합니다. 이상하게도 세미콜론은 다음에서 작동합니다.
gremlin> g.V().count()
==>0
gremlin> g.E().count()
==>0
gremlin> g.addV(label, 'Subject', 'ident', '1') && g.addV(label, 'Subject', 'ident', '2')
==>true
gremlin> node3 = graph.addVertex(label, 'Subject', 'ident', '3') ; g.V().has('ident', '1').next().addEdge('dc:isPartOf', node3) ; node3.addEdge('dc:isPartOf', g.V().has('ident','2').next())
==>e[35z-6d4-2l91-9n4][8248-dc:isPartOf->12496]
gremlin> g.V().count()
==>3
gremlin> g.E().count()
==>2
이제 트릭을 만듭니다. 어떻게이 두 작업을 한 줄로 수행 할 수 있습니까 (하나의 Websocket 요청, 실제로)? 위의 node3 = ...
행을 ;
을 통해 복사하고 적절한 기능을 얻을 수도 없습니다.
"순회 반복"은 매번 사람들을 잡습니다. 또한 참조 : http://tinkerpop.apache.org/docs/current/tutorials/the-gremlin-console/#result-iteration - Gremlin은 TinkerPop 2.x에서 "그루비"였습니다. 나는 TinkerPop 3.x에 대해 더 이상이 제한을 두지 않을 것입니다. –
정말 고마워요! –