Wykonywanie zapytań o elementy w usłudze Azure Cosmos DB for NoSQL przy użyciu języka JavaScript
DOTYCZY: NoSQL
Elementy w usłudze Azure Cosmos DB reprezentują jednostki przechowywane w kontenerze. W interfejsie API for NoSQL element składa się z danych w formacie JSON z unikatowym identyfikatorem. W przypadku wystawiania zapytań przy użyciu interfejsu API dla noSQL wyniki są zwracane jako tablica JSON dokumentów JSON.
Wykonywanie zapytań o elementy przy użyciu języka SQL
Usługa Azure Cosmos DB for NoSQL obsługuje używanie języka Structured Query Language (SQL) do wykonywania zapytań dotyczących elementów w kontenerach. Proste zapytanie SQL, takie jak SELECT * FROM products
zwraca wszystkie elementy i właściwości z kontenera. Zapytania mogą być jeszcze bardziej złożone i obejmują określone projekcje pól, filtry i inne typowe klauzule SQL:
SELECT
p.name,
p.quantity
FROM
products p
WHERE
p.quantity > 500
Aby dowiedzieć się więcej o składni SQL dla usługi Azure Cosmos DB for NoSQL, zobacz Wprowadzenie do zapytań SQL.
Wykonywanie zapytań względem elementu
Utwórz tablicę pasujących elementów z obiektu items kontenera przy użyciu metody zapytania.
const querySpec = {
query: `SELECT * FROM ${container.id} f WHERE f.name = @name`,
parameters: [{
name: "@name",
value: "Sunnox Surfboard",
}],
};
const { resources } = await container.items.query(querySpec).fetchAll();
for (const product of resources) {
console.log(`${product.name}, ${product.quantity} in stock `);
}
Metoda zapytania zwraca obiekt QueryIterator . Użyj metody fetchAll iteratora, aby pobrać wszystkie wyniki. Funkcja QueryIterator udostępnia również metodę fetchNext, hasMoreResults i inne metody ułatwiające korzystanie z wyników.
Następne kroki
Teraz, gdy wykonano zapytanie dotyczące wielu elementów, wypróbuj jeden z naszych kompleksowego samouczka przy użyciu interfejsu API dla noSQL.