Zelfstudie: Query's uitvoeren in Azure Cosmos DB met behulp van de SQL-API
VAN TOEPASSING OP:
SQL-API
De SQL-API van Azure Cosmos DB ondersteunt het opvragen van documenten met behulp van SQL. Dit artikel bevat een voorbeelddocument en twee voorbeelden van SQL-query's en de resultaten daarvan.
Dit artikel behandelt de volgende taken:
- Gegevens opvragen met behulp van SQL
Voorbeelddocument
In de SQL-query's in dit artikel wordt het volgende voorbeelddocument gebruikt.
{
"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
}
Waar kan ik SQL-query's uitvoeren?
U kunt query's uitvoeren met behulp van de Data Explorer in de Azure Portal en via de REST API en SDK's.
Meer informatie over SQL-query's vindt u in:
Vereisten
In deze zelfstudie wordt ervan uitgegaan dat u een Azure Cosmos DB-account en een verzameling hebt. Hebt u geen van deze resources? Voltooi de snelstart van 5 minuten.
Voorbeeldquery 1
Op basis van het bovenstaand voorbeelddocument van een familie retourneert de volgende SQL-query de documenten waarin het id-veld gelijk is aan WakefieldFamily. Omdat het een SELECT *-instructie is, is de uitvoer van de query het volledige JSON-document:
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
}
Voorbeeldquery 2
In de volgende query worden alle opgegeven namen geretourneerd van kinderen in de familie van wie de id overeenkomt met WakefieldFamily.
Query
SELECT c.givenName
FROM Families f
JOIN c IN f.children
WHERE f.id = 'WakefieldFamily'
Results
[
{
"givenName": "Jesse"
},
{
"givenName": "Lisa"
}
]
Volgende stappen
In deze zelfstudie hebt u het volgende gedaan:
- U hebt geleerd hoe u een query uitvoert met behulp van SQL
U kunt nu doorgaan met de volgende zelfstudie, waarin u leert hoe u uw gegevens globaal distribueert.
Probeert u capaciteitsplanning uit te Azure Cosmos DB? U kunt informatie over uw bestaande databasecluster gebruiken voor capaciteitsplanning.
- Als u alleen het aantal vcores en servers in uw bestaande databasecluster weet, leest u over het schatten van aanvraageenheden met behulp van vCores of vCCPUs
- Als u de gebruikelijke aanvraagsnelheden voor uw huidige databaseworkload kent, leest u over het schatten van aanvraageenheden met behulp van Azure Cosmos DB capacity planner