Erstellen von Abfragen mit NoSQL
Eine einfache SQL-Abfrage in Azure Cosmos DB for NoSQL ähnelt der gleichen Abfrage in jeder anderen Datenbankplattform. Sie besteht aus einigen wesentlichen Komponenten:
- dem
SELECT-Schlüsselwort - Entweder ein Sternchen zum Angeben aller möglichen Felder oder eine inklusive Liste von Feldern
- Das
FROMSchlüsselwort, gefolgt von der Datenquelle (Container)
Hier ist eine einfache Abfrage, die alle Felder aus einem Container zurückgibt:
SELECT * FROM products
Hier ist eine andere Abfrage, die nur einige Felder aus einem Container zurückgibt:
SELECT
products.id,
products.name,
products.price,
products.categoryName
FROM
products
Eine interessante Einschränkung hier ist, dass es nicht egal ist, welcher Name hier für die Quelle verwendet wird, da diese Quelle auf die Quelle verweist, die vorwärts geht. Sie können sich diese Quelle als Variable vorstellen. Es ist nicht ungewöhnlich, einen einzelnen Buchstaben aus dem Containernamen zu verwenden:
SELECT
p.name,
p.price
FROM
p
Sie können ein beliebiges Wort oder einen beliebigen Ausdruck wie in Entwicklercode verwenden:
SELECT
supercalifragilisticexpialidocious.id,
supercalifragilisticexpialidocious.categoryId
FROM
supercalifragilisticexpialidocious
Alternativ können Sie die Datenquelle aliasen und bei Bedarf den Alias verwenden:
SELECT
alternativealias.id,
alternativealias.name
FROM
reallyinterestingdatasource alternativealias
Wir können unsere Abfragen auch mithilfe des WHERE-Schlüsselworts filtern. In diesem Beispiel filtern wir die Liste der Produkte auf diese Produkte, die einen Preis haben, der zwischen 50 $ und 100 $ liegt:
SELECT
p.name,
p.categoryName,
p.price
FROM
products p
WHERE
p.price >= 50 AND
p.price <= 100