aql - How to get sub document from complex JSON - ArangoDB -


i need events sub documents (array of events) contain _playerid = somevalue, can done aql in arangodb?

sample doc:

{     "livescore": {         "league": [             {                 "match": {                     "home": {                         "_goals": "2",                         "_id": "2337787",                         "_name": "defensa y justicia"                     },                     "away": {                         "_goals": "3",                         "_id": "2337780",                         "_name": "colon santa fe"                     },                     "events": {                         "event": [                             {                                 "_assist": "",                                 "_assistid": "",                                 "_extra_min": "",                                 "_id": "22295244",                                 "_minute": "22",                                 "_player": "j. tejera",                                 "_playerid": "2405930",                                 "_result": "",                                 "_team": "home",                                 "_type": "yellowcard"                             }                         ]                     },                     "ht": {                         "_score": "[1-1]"                     },                     "ft": {                         "_score": "[2-3]"                     },                     "_alternate_id": "4100536",                     "_alternate_id_2": "4328174",                     "_commentary": "true",                     "_date": "12.05.2015",                     "_id": "4218094",                     "_static_id": "12051523377872337780",                     "_status": "ft",                     "_time": "00:10"                 },                 "_country": "argentina",                 "_name": "argentina: primera division",                 "_cup": "false",                 "_id": "2914",                 "_sub_id": "29144"             },             {                 "match": [                     {                         "home": {                             "_goals": "?",                             "_id": "2337758",                             "_name": "berazategui"                         },                         "away": {                             "_goals": "?",                             "_id": "2337826",                             "_name": "general lamadrid"                         },                         "events": "",                         "ht": {                             "_score": ""                         },                         "_alternate_id": "4106986",                         "_alternate_id_2": "4328905",                         "_commentary": "false",                         "_date": "12.05.2015",                         "_id": "4224541",                         "_static_id": "12051523377582337826",                         "_status": "18:00",                         "_time": "18:00"                     },                     {                         "home": {                             "_goals": "?",                             "_id": "2337842",                             "_name": "justo josé de urquiza"                         },                         "away": {                             "_goals": "?",                             "_id": "2337850",                             "_name": "laferrere"                         },                         "events": "",                         "ht": {                             "_score": ""                         },                         "_alternate_id": "4106988",                         "_alternate_id_2": "4329005",                         "_commentary": "false",                         "_date": "12.05.2015",                         "_id": "4224543",                         "_static_id": "12051523378422337850",                         "_status": "18:00",                         "_time": "18:00"                     }                 ],                 "_country": "argentina",                 "_name": "argentina: primera c metropolitana",                 "_cup": "false",                 "_id": "2912",                 "_sub_id": "29120"             }         ],         "_updated": "12.05.2015 06:41:07",         "_sport": "soccer"     } } 

i think yes. tried test data:

for d in yourdata     let leaguelist = d.livescore.league     league in leaguelist         let eventlist = league.match.events         filter !is_null(eventlist)          let eventlist2 = eventlist.event         event in eventlist2             filter event._playerid == "2405930"             return event 

of course not sure if understand data modell / problem correctly, maybe example helps you.


Comments

Popular posts from this blog

apache - PHP Soap issue while content length is larger -

asynchronous - Python asyncio task got bad yield -

javascript - Complete OpenIDConnect auth when requesting via Ajax -