2015-10-19 53 views
0

我想返回一定的結構。 這裏是我的查詢:Cypher結果返回一定的結構

MATCH (tracker:tracker { active: true }) OPTIONAL MATCH (tracker { active: true })--(timer:timer) RETURN { tracker:tracker, timers:COLLECT(timer) } as trackers 

這裏是我到目前爲止返回:

{ 
    "results": [{ 
    "columns": ["trackers"], 
    "data": [{ 
     "row": [{ 
     "tracker": { 
      "title": "a", 
      "id": "04e3fddc-5aef-4c3a-9aeb-62a9fb15bd75", 
      "active": true 
     }, 
     "timers": [] 
     }] 
    }] 
    }], 
    "errors": [] 
} 

我想下的「跟蹤器」與跟蹤器的屬性,以嵌套的計時器,如下所示:

{ 
    "results": [{ 
    "columns": ["trackers"], 
    "data": [{ 
     "row": [{ 
     "tracker": { 
      "title": "a", 
      "id": "04e3fddc-5aef-4c3a-9aeb-62a9fb15bd75", 
      "active": true, 
      "timers": [] 
     }] 
    }] 
    }], 
    "errors": [] 
} 

回答

1

試試這個:

MATCH (tr:tracker {active: true}) 
OPTIONAL MATCH (tr)--(ti:timer) 
WITH { 
    title: tr.title, 
    id: tr.id, 
    active: tr.active, 
    timers: COLLECT(ti) 
} as trackers 
RETURN trackers 
+0

我正在做這個解決方法,直到有更好的解決方案。我不想這樣做的原因是我不想跟蹤所有的屬性。標題,ID和活動是我現在擁有的,但將來會有更多的屬性,並且我不希望每次添加新屬性時更新我的​​查詢。 –