Kurz: Dotazování služby Azure Cosmos DB pomocí rozhraní SQL API
PLATÍ PRO:
SQL API
Rozhraní SQL API služby Azure Cosmos DB podporuje dotazování dokumentů pomocí jazyka SQL. Tento článek obsahuje ukázkový dokument a dva ukázkové dotazy SQL a jejich výsledky.
Tento článek se zabývá následujícími úkony:
- Dotazování dat pomocí jazyka SQL
Ukázkový dokument
Dotazy SQL 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
}
Kde můžu spouštět dotazy SQL?
Dotazy můžete spouštět pomocí Průzkumník dat v Azure Portal a prostřednictvím REST API a sad SDK.
Další informace o dotazech SQL najdete tady:
Požadavky
V tomto kurzu se předpokládá, že máte účet a kolekci Azure Cosmos DB. Nemáte žádné z těchto prostředků? Dokončete pětiminutový rychlý start.
Příklad dotazu 1
s ohledem na výše uvedený dokument rodiny vzorků vrátí následující SQL 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:
Dotaz
SELECT *
FROM Families f
WHERE f.id = "WakefieldFamily"
Výsledky
{
"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
}
Příklad dotazu 2
Další dotaz vrátí všechny zadané názvy podřízených objektů v rodině, jejichž ID odpovídá WakefieldFamily .
Dotaz
SELECT c.givenName
FROM Families f
JOIN c IN f.children
WHERE f.id = 'WakefieldFamily'
Výsledky
[
{
"givenName": "Jesse"
},
{
"givenName": "Lisa"
}
]
Další kroky
V tomto kurzu jste provedli následující úlohy:
- Zjistili jste, jak provádět dotazy pomocí jazyka SQL.
Teď můžete pokračovat k dalšímu kurzu, kde se dozvíte, jak globálně distribuovat data.
chcete se pokusit plánování kapacity pro migraci na Azure Cosmos DB? Pro plánování kapacity můžete použít informace o vašem existujícím databázovém clusteru.
- Pokud znáte počet virtuální jádra a serverů v existujícím databázovém clusteru, přečtěte si téma odhadování jednotek žádostí pomocí virtuální jádra nebo vCPU .
- pokud znáte typické míry požadavků pro aktuální databázovou úlohu, přečtěte si téma odhadace jednotek žádostí pomocí Azure Cosmos DB kapacity plánovače .