Tutoriel : Interroger des données dans Azure Cosmos DB for NoSQL
S’APPLIQUE À : NoSQL
Azure Cosmos DB for NoSQL prend en charge l’interrogation de documents à l’aide de la syntaxe de requête intégrée. Cet article fournit un exemple de document et deux exemples de requêtes et de résultats.
Cet article décrit les tâches suivantes :
- Interroger des données NoSQL avec la syntaxe de requête intégrée
Prérequis
Ce didacticiel suppose que vous ayez un compte, une base de données et un conteneur Azure Cosmos DB.
Vous ne disposez d’aucune de ces ressources ? Compléter ce démarrage rapide : Créer un compte, une base de données, un conteneur et des éléments Azure Cosmos DB à partir du portail Azure.
Vous pouvez exécuter les requêtes à l’aide de l’Explorateur Azure Cosmos DB dans le Portail Azure. Vous pouvez également exécuter des requêtes qui utilisent l’API REST ou des SDKs variées.
Pour plus d’informations sur les requêtes, consultez Bien démarrer avec les requêtes.
Exemple de document
L’exemple de document suivant est utilisé pour les requêtes de cet article.
{
"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
}
Sélectionner tous les champs et appliquer un filtre
Étant donné l’exemple de document de famille, la requête suivante renvoie les documents où le champ ID correspond WakefieldFamily
. Comme il s’agit d’une instruction SELECT *
, le résultat de la requête est le document JSON complet :
Requête :
SELECT *
FROM Families f
WHERE f.id = "WakefieldFamily"
Résultats :
{
"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
}
Sélectionner un produit croisé d’un champ de collection enfant
La requête suivante retourne tous les prénoms des enfants de la famille dont l’ID correspond à WakefieldFamily
.
Requête :
SELECT c.givenName
FROM Families f
JOIN c IN f.children
WHERE f.id = 'WakefieldFamily'
Résultats :
[
{
"givenName": "Jesse"
},
{
"givenName": "Lisa"
}
]
Étapes suivantes
Dans ce tutoriel, vous avez effectué les tâches suivantes :
- Découvrez comment interroger à l’aide de la syntaxe de requête intégrée
Vous pouvez maintenant poursuivre avec le didacticiel suivant montrant comment distribuer vos données globalement.