Couchbase subdocument array position

Hi,
In the following document how can I get the position of an element in bookings array where ID = “1234”
{
“Name”:“couchbase”,
“Bookings”:[{
“ID”:"1234,“Date”:“12-05-2017”},
":[{
“ID”:"4537,“Date”:“12-05-2017”}]
]
}

Regards,
Srikar

INSERT INTO default VALUES("kk01",{ "Name":"couchbase", "Bookings":[{ "ID":"1234","Date":"12-05-2017"}, { "ID":"4537","Date":"12-05-2017"}] } );
SELECT ARRAY_POS(Bookings,FIRST ev FOR ev IN Bookings WHEN ev.ID = "1234" END) pos FROM default;

SELECT ARRAY_POS(Bookings,FIRST ev FOR ev IN Bookings WHEN ev.ID = “1234” END) pos FROM default;

Response: as expected
[{
“pos”:0}]

SELECT ARRAY_POS(Bookings,FIRST ev FOR ev IN Bookings WHEN ev.ID = “4537” END) pos FROM default;

Response: not valid, expected is position is1
[{
“pos”:-1}]

Please can you suggest why I was getting -1 for all the position except first.

It works for me. What is Version.

 SELECT ARRAY_POS(Bookings,FIRST ev FOR ev IN Bookings WHEN ev.ID = "4537" END) pos FROM default;
{
    "requestID": "94c43959-c1b7-4c9e-a1c1-6e9be8a6e625",
    "signature": {
        "pos": "number"
    },
    "results": [
        {
            "pos": 1
        }
    ]
}
1 Like

It is working for me, there was a syntax error at my end.