Esercitazione: Eseguire query in Azure Cosmos DB con l'API SQLTutorial: Query Azure Cosmos DB by using the SQL API

L'API SQL di Azure Cosmos DB supporta l'esecuzione di query sui documenti usando SQL.The Azure Cosmos DB SQL API supports querying documents using SQL. Questo articolo include un documento di esempio e due esempi di query SQL e relativi risultati.This article provides a sample document and two sample SQL queries and results.

Questo articolo illustra le attività seguenti:This article covers the following tasks:

  • Esecuzione di query sui dati con SQLQuerying data with SQL

Documento di esempioSample document

Le query SQL di questo articolo usano il documento di esempio seguente.The SQL queries in this article use the following sample document.

{
  "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
}

Dove è possibile eseguire query SQL?Where can I run SQL queries?

È possibile eseguire query usando Esplora dati nel Portale di Azure, tramite le API REST e gli SDK e anche usando Query Playground, che esegue query su un set di dati di esempio esistente.You can run queries using the Data Explorer in the Azure portal, via the REST API and SDKs, and even the Query playground, which runs queries on an existing set of sample data.

Per altre informazioni sulle query SQL, vedere:For more information about SQL queries, see:

PrerequisitiPrerequisites

L'esercitazione presuppone la presenza di un account e di una raccolta di Azure Cosmos DB.This tutorial assumes you have an Azure Cosmos DB account and collection. Questi requisiti non sono disponibili?Don't have any of those? Completare la Guida introduttiva di 5 minuti.Complete the 5-minute quickstart.

Query di esempio 1Example query 1

Nel precedente documento della famiglia, la query SQL seguente restituisce i documenti in cui il campo ID corrisponde a WakefieldFamily.Given the sample family document above, following SQL query returns the documents where the id field matches WakefieldFamily. Poiché si tratta di un'istruzione SELECT *, l'output della query è il documento JSON completo:Since it's a SELECT * statement, the output of the query is the complete JSON document:

QueryQuery

SELECT * 
FROM Families f 
WHERE f.id = "WakefieldFamily"

RisultatiResults

{
  "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
}

Query di esempio 2Example query 2

La query successiva restituisce tutti i nomi dei figli della famiglia il cui ID corrisponde a WakefieldFamily, ordinati in base al grado della classe frequentata.The next query returns all the given names of children in the family whose id matches WakefieldFamily ordered by their grade.

QueryQuery

SELECT c.givenName 
FROM Families f 
JOIN c IN f.children 
WHERE f.id = 'WakefieldFamily'

RisultatiResults

[ { "givenName": "Jesse" }, { "givenName": "Lisa" } ][ { "givenName": "Jesse" }, { "givenName": "Lisa" } ]

Passaggi successiviNext steps

In questa esercitazione sono state eseguite le operazioni seguenti:In this tutorial, you've done the following:

  • È stato appreso come eseguire una query usando SQLLearned how to query using SQL

È ora possibile passare all'esercitazione successiva per imparare a distribuire i dati a livello globale.You can now proceed to the next tutorial to learn how to distribute your data globally.