Tutorial: Consultar o Azure Cosmos DB usando a API do SQLTutorial: Query Azure Cosmos DB by using the SQL API

A API do SQL do Azure Cosmos DB oferece suporte à consulta de documentos usando SQL.The Azure Cosmos DB SQL API supports querying documents using SQL. Este artigo fornece um exemplo de documento e dois exemplos de consultas SQL e resultados.This article provides a sample document and two sample SQL queries and results.

Este artigo aborda as seguintes tarefas:This article covers the following tasks:

  • Consultar dados com SQLQuerying data with SQL

Exemplo de documentoSample document

As consultas de SQL neste artigo usam o seguinte exemplo de documento.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
}

Onde é possível executar consultas SQL?Where can I run SQL queries?

Você pode executar consultas usando o Data Explorer no Portal do Azure, por meio da API REST e SDKs e até mesmo o Playground de consultas, que executa consultas em um conjunto existente de dados de exemplo.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.

Para saber mais sobre consultas SQL, confira:For more information about SQL queries, see:

Pré-requisitosPrerequisites

Este tutorial presume que você tem uma conta e uma coleção do Azure Cosmos DB.This tutorial assumes you have an Azure Cosmos DB account and collection. Não tenho nenhum deles?Don't have any of those? Conclua o início rápido de 5 minutos.Complete the 5-minute quickstart.

Exemplo de consulta 1Example query 1

Com base no exemplo de documento de família acima, a consulta SQL a seguir retorna os documentos cujo campo de id corresponde a WakefieldFamily.Given the sample family document above, following SQL query returns the documents where the id field matches WakefieldFamily. Por se tratar de uma instrução SELECT *, a saída da consulta será todo o documento JSON:Since it's a SELECT * statement, the output of the query is the complete JSON document:

ConsultaQuery

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

ResultadosResults

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

Exemplo de consulta 2Example query 2

A próxima consulta retorna todos os nomes dos filhos na família cuja identificação corresponde ao WakefieldFamily organizado por nota.The next query returns all the given names of children in the family whose id matches WakefieldFamily ordered by their grade.

ConsultaQuery

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

ResultadosResults

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

Próximas etapasNext steps

Neste tutorial, você fez o seguinte:In this tutorial, you've done the following:

  • Aprendeu a consultar usando SQLLearned how to query using SQL

Agora você pode prosseguir para o próximo tutorial e aprender a distribuir seus dados globalmente.You can now proceed to the next tutorial to learn how to distribute your data globally.