Tutorial: Abfragen von Azure Cosmos BD mithilfe der SQL-APITutorial: Query Azure Cosmos DB by using the SQL API

Die SQL-API von Azure Cosmos DB unterstützt die Abfrage von Dokumenten mit SQL.The Azure Cosmos DB SQL API supports querying documents using SQL. Dieser Artikel stellt ein Beispieldokument sowie zwei SQL-Beispielabfragen und Ergebnisse vor.This article provides a sample document and two sample SQL queries and results.

In diesem Artikel werden die folgenden Aufgaben behandelt:This article covers the following tasks:

  • Abfragen von Daten mit SQLQuerying data with SQL

BeispieldokumentSample document

Die SQL-Abfragen in diesem Artikel verwenden das folgende Beispieldokument.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
}

Wo kann ich SQL-Abfragen durchführen?Where can I run SQL queries?

Sie können Abfragen mit dem Daten-Explorer im Azure-Portal, über die REST-API und SDKs und auch auf dem Query Playground durchführen, der Abfragen an einem vorhandenen Satz von Beispieldaten durchführt.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.

Weitere Informationen zu SQL-Abfragen finden Sie hier:For more information about SQL queries, see:

VoraussetzungenPrerequisites

Dieses Tutorial setzt voraus, dass Sie über Azure Cosmos DB-Konto und -Sammlung verfügen.This tutorial assumes you have an Azure Cosmos DB account and collection. Sie haben beides nicht?Don't have any of those? Führen Sie den 5-Minuten-Schnellstart aus.Complete the 5-minute quickstart.

Beispielabfrage 1Example query 1

Im Beispiel des obigen Familienbeispieldokuments gibt die folgende SQL-Abfrage die Dokumente zurück, in denen das Feld „id“ mit WakefieldFamily übereinstimmt.Given the sample family document above, following SQL query returns the documents where the id field matches WakefieldFamily. Da es sich um eine SELECT *-Anweisung handelt, ist die Ausgabe der Abfrage das komplette JSON-Dokument:Since it's a SELECT * statement, the output of the query is the complete JSON document:

AbfrageQuery

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

ErgebnisseResults

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

Beispielabfrage 2Example query 2

Die nächste Abfrage gibt alle Vornamen von Kindern der Familie zurück, deren „id“ WakefieldFamily entspricht, und zwar geordnet nach Schulklassen.The next query returns all the given names of children in the family whose id matches WakefieldFamily ordered by their grade.

AbfrageQuery

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

ErgebnisseResults

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

Nächste SchritteNext steps

In diesem Tutorial haben Sie die folgenden Aufgaben ausgeführt:In this tutorial, you've done the following:

  • Sie haben gelernt, wie Sie Abfragen mithilfe von SQL durchführen.Learned how to query using SQL

Sie können jetzt mit dem nächsten Tutorial fortfahren, um zu erfahren, wie Sie Ihre Daten global verteilen.You can now proceed to the next tutorial to learn how to distribute your data globally.