2016-06-23 23 views
0

Ich versuche Abfrage folgende:Wie kann ich nach Gremlin Server (Titan 1.0) auf Basis der Vertex ID gruppieren?

gV (835.776) .out ('Folgen') in ('WallPost') order() durch ('PostedTimeLong', decr) .Range (0... , 2)

und ich bin immer folgende Antwort:

{ 

"requestId": "524462bc-5e46-40bf-aafd-64d00351dc87", 
"status": { 
    "message": "", 
    "code": 200, 
    "attributes": { } 
}, 
"result": { 
    "data": [ 
     { 
      "id": 1745112, 
      "label": "Post", 
      "type": "vertex", 
      "properties": { 
       "PostImage": [ 
        { 
         "id": "sd97-11ejc-2wat", 
         "value": "" 
        } 
       ], 
       "PostedByUser": [ 
        { 
         "id": "sc2j-11ejc-2txh", 
         "value": "[email protected]" 
        } 
       ], 
       "PostedTime": [ 
        { 
         "id": "scgr-11ejc-2upx", 
         "value": "2016-06-19T09:17:27.6791521Z" 
        } 
       ], 
       "PostMessage": [ 
        { 
         "id": "sbob-11ejc-2t51", 
         "value": "Hello @[tag:Urnotice_Profile|835776|1] , @[tag:Abhinav_Srivastava|872488|1] and @[tag:Rituraj_Rathore|839840|1]" 
        } 
       ], 
       "PostedTimeLong": [ 
        { 
         "id": "scuz-11ejc-2vid", 
         "value": 636019246476802029 
        } 
       ] 
      } 
     }, 
     { 
      "id": 1745112, 
      "label": "Post", 
      "type": "vertex", 
      "properties": { 
       "PostImage": [ 
        { 
         "id": "sd97-11ejc-2wat", 
         "value": "" 
        } 
       ], 
       "PostedByUser": [ 
        { 
         "id": "sc2j-11ejc-2txh", 
         "value": "[email protected]" 
        } 
       ], 
       "PostedTime": [ 
        { 
         "id": "scgr-11ejc-2upx", 
         "value": "2016-06-19T09:17:27.6791521Z" 
        } 
       ], 
       "PostMessage": [ 
        { 
         "id": "sbob-11ejc-2t51", 
         "value": "Hello @[tag:Urnotice_Profile|835776|1] , @[tag:Abhinav_Srivastava|872488|1] and @[tag:Rituraj_Rathore|839840|1]" 
        } 
       ], 
       "PostedTimeLong": [ 
        { 
         "id": "scuz-11ejc-2vid", 
         "value": 636019246476802029 
        } 
       ] 
      } 
     } 
    ], 
    "meta": { } 
} 

} 

seit gleichen Beitrag auf zwei verschiedene IDs geschrieben wird, wird es zweimal in Reaktion kommen. Ich möchte nach Antwort auf Basis der Vertex-ID gruppieren (beide haben die gleiche Vertex-ID.) Oder ich möchte nur ein Objekt aus ihnen herausholen, da beide nur gleich sind.

Ich habe folgende Abfragen versucht, aber nichts hat für mich funktioniert :...

gV (835.776) .out ('Folgen') in ('WallPost') groupBy {it.id} .order() durch ('PostedTimeLong', decr) .Range (0, 3)

gV (835776) .out ('Folgen'). In ('WallPost'). Group(). Nach (id) .order(). Nach ('PostedTimeLong', decr) .range (0 , 3)

Wie kann ich anhand der Vertex-ID nach dem Ergebnis gruppieren?

Antwort

1

Die Abfrage

g.V(835776).out('Follow').in('WallPost').group().by(id).order().by('PostedTimeLong', decr).range(0,3) 

funktionieren sollte, obwohl order().by() und range() keine Wirkung haben wird. Allerdings denke ich nicht, dass Sie wirklich wollen group(), Sie möchten eher dedup():

g.V(835776).out('Follow').in('WallPost').dedup().order().by('PostedTimeLong', decr).limit(3)