Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
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
Prerequisites
- Un compte, une base de données et un conteneur Azure Cosmos DB. Si vous n’avez pas ces ressources, consultez 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 à l’aide de l’API REST ou de différents kits SDK.
Pour plus d’informations sur les requêtes, consultez Requêtes dans Azure Cosmos DB pour NoSQL.
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"
}
]