У меня JSON нравится
{
"id": "58d99ca3231f13b9ecbbbca4",
"50records": [
{
"aomsLineNbr": 1,
"licenses": [
{
"productKey": "84fc2cde-9735-4cea-b97a-3cd627d3d0a5",
"aid": "someAid"
}
]
}
]
}
Я хочу получить отчет на основе aid
.
50record
может иметь несколько объектов, а licenses
могут также иметь несколько объектов.
"SELECT * FROM orders o WHERE o['50records'][0].licenses[0].aid='someAid'"
50records
эти 50records
и licenses
на поиск aid
во всех доступных объектах?Ниже приведена моя процедура магазина:
function getOrdersByAidCollection(aid){
var context = getContext();
var collection = context.getCollection();
var link = collection.getSelfLink();
var response = context.getResponse();
var query = "SELECT * FROM orders o WHERE o['50records'][0].licenses[0].aid='"+aid+"'";
var isAccepted = collection.queryDocuments(collection.getSelfLink(),query,
function (err, feed, options) {
if (err) {
return errorResponse(400, err.message);
}
if (!feed || !feed.length){
return errorResponse(400, "no orders doc found");
}else {
getContext().getResponse().setBody(JSON.stringify(feed));
}
});
if (!isAccepted){
return errorResponse(400, "The query was not accepted by the server.");
}
}
Где и как мне нужно поставить петлю?
Любая помощь будет заметна!
Спасибо
зачем вам цикл? Это похоже на вопрос запроса. Вы можете попробовать такой запрос:
SELECT VALUE r
FROM orders c
JOIN r in c["50records"]
JOIN li in r.licenses
WHERE li.aid = "someAid"
Спасибо!