Вы можете просто использовать оператор In для запроса документов, как показано ниже:
Where c.Id in ("sdsd", "sdsds" )
SELECT * FROM c WHERE c.Id in (listOfId )
Это работает.
Для сложного запроса вы можете использовать Array_Contains, который является встроенной функцией. Предположим, у вас есть документ, подобный приведенному ниже:
[
{
"videoGameId": "1",
"videoGameName": "Battle Royale Kingdoms",
"selectedLevels": [
{
"title": "Jungle Arena",
"towers": 2,
"towerPower": 40
},
{
"title": "Legendary World",
"towers": 5,
"towerPower": 100
}
]
},
{
"videoGameId": "2",
"videoGameName": "Fortnite vs Zombies",
"selectedLevels": [
{
"title": "Rainbows after the storm",
"maximumPlayers": 30,
"minimumExperienceLevel": 60
},
{
"title": "The last of us",
"maximumPlayers": 10,
"minimumExperienceLevel": 100
}
]
}
]
Два документа в коллекции VideoGames1 имеют ключ тегов с массивом строк с тегами, относящимися к видеоигре. Следующий запрос создаст новый документ для каждой видеоигры, который включает монстров в качестве одного из строковых значений ключа тегов. В запросе используется встроенная функция ARRAY_CONTAINS. Эта функция возвращает логическое значение, указывающее, содержит ли массив, полученный в качестве аргумента, указанное значение.
SELECT v.id AS videoGameId,
v.name AS videoGameName,
v.tags AS videoGameTags
FROM Videogames v
WHERE ARRAY_CONTAINS(v.tags, "monsters")
Аналогичным образом вы можете написать запрос для своей заявки c.
Дополнительная ссылка:
https://novacontext.com/writing-and-running-queries-on-nosql-document-databases/
Надеюсь, это поможет.