다음을 통해 공유


JavaScript를 사용하여 Azure Cosmos DB for NoSQL의 항목 쿼리

적용 대상: NoSQL

Azure Cosmos DB의 항목은 컨테이너 내에 저장된 엔터티를 나타냅니다. API for NoSQL에서 항목은 고유 식별자가 있는 JSON 형식 데이터로 구성됩니다. API for NoSQL을 사용하여 쿼리를 실행하면 결과가 JSON 문서의 JSON 배열로 반환됩니다.

SQL을 사용하여 항목 쿼리

Azure Cosmos DB for NoSQL은 SQL(구조적 쿼리 언어)을 사용하여 컨테이너의 항목에 대한 쿼리를 수행할 수 있도록 지원합니다. SELECT * FROM products와 같은 간단한 SQL 쿼리는 컨테이너의 모든 항목과 속성을 반환합니다. 쿼리는 훨씬 더 복잡할 수 있으며 특정 필드 프로젝션, 필터 및 기타 일반적인 SQL 절을 포함할 수 있습니다.

SELECT 
    p.name, 
    p.quantity
FROM 
    products p 
WHERE 
    p.quantity > 500

Azure Cosmos DB for NoSQL의 SQL 구문에 대한 자세한 내용은 SQL 쿼리 시작을 참조하세요.

항목 쿼리

query 메서드를 사용하여 컨테이너의 항목 개체에서 일치하는 항목 배열을 만듭니다.

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 `);
}

query 메서드는 QueryIterator 개체를 반환합니다. 반복기의 fetchAll 메서드를 사용하여 모든 결과를 검색합니다. QueryIterator는 결과를 사용하는 데 도움이 되는 fetchNext, hasMoreResults 및 기타 메서드도 제공합니다.

다음 단계

여러 항목을 쿼리했으므로 이제 API for NoSQL을 사용하여 엔드투엔드 자습서 중 하나를 사용해 보세요.