Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
PLATÍ PRO: NoSQL
Azure Cosmos DB for NoSQL podporuje dotazování dokumentů pomocí integrované syntaxe dotazů. Tento článek obsahuje ukázkový dokument a dva ukázkové dotazy a výsledky.
Tento článek se zabývá následujícími úkony:
- Dotazování dat NoSQL pomocí integrované syntaxe dotazů
Prerequisites
- Účet, databáze a kontejner služby Azure Cosmos DB. Pokud tyto prostředky nemáte, přečtěte si téma Vytvoření účtu, databáze, kontejneru a položek Služby Azure Cosmos DB na webu Azure Portal.
Dotazy můžete spouštět pomocí Průzkumníka služby Azure Cosmos DB na webu Azure Portal. Dotazy můžete spouštět také pomocí rozhraní REST API nebo různých sad SDK.
Další informace o dotazech najdete v tématu Dotazy ve službě Azure Cosmos DB for NoSQL.
Ukázkový dokument
Dotazy v tomto článku využívají následující ukázkový dokument.
{
"id": "WakefieldFamily",
"parents": [
{ "familyName": "Wakefield", "givenName": "Robin" },
{ "familyName": "Miller", "givenName": "Ben" }
],
"children": [
{
"familyName": "Merriam",
"givenName": "Jesse",
"gender": "female", "grade": 1,
"pets": [
{ "givenName": "Goofy" },
{ "givenName": "Shadow" }
]
},
{
"familyName": "Miller",
"givenName": "Lisa",
"gender": "female",
"grade": 8
}
],
"address": { "state": "NY", "county": "Manhattan", "city": "NY" },
"creationDate": 1431620462,
"isRegistered": false
}
Výběr všech polí a použití filtru
Vzhledem k ukázkovém rodinnému dokumentu vrátí následující dotaz dokumenty, ve kterých se pole ID shoduje WakefieldFamily. Vzhledem k tomu, že se jedná o příkaz SELECT *, výstupem dotazu bude celý dokument JSON:
Query:
SELECT *
FROM Families f
WHERE f.id = "WakefieldFamily"
Results:
{
"id": "WakefieldFamily",
"parents": [
{ "familyName": "Wakefield", "givenName": "Robin" },
{ "familyName": "Miller", "givenName": "Ben" }
],
"children": [
{
"familyName": "Merriam",
"givenName": "Jesse",
"gender": "female", "grade": 1,
"pets": [
{ "givenName": "Goofy" },
{ "givenName": "Shadow" }
]
},
{
"familyName": "Miller",
"givenName": "Lisa",
"gender": "female",
"grade": 8
}
],
"address": { "state": "NY", "county": "Manhattan", "city": "NY" },
"creationDate": 1431620462,
"isRegistered": false
}
Výběr křížového produktu podřízeného pole kolekce
Následující dotaz vrátí všechna jména dětí v rodině, jejichž ID odpovídá WakefieldFamily.
Query:
SELECT c.givenName
FROM Families f
JOIN c IN f.children
WHERE f.id = 'WakefieldFamily'
Results:
[
{
"givenName": "Jesse"
},
{
"givenName": "Lisa"
}
]