다음을 통해 공유


WHERE 절(NoSQL 쿼리)

적용 대상: NoSQL

선택 사항인 WHERE 절(WHERE <filter_condition>)은 결과에 포함하기 위해 원본 JSON 항목이 쿼리를 충족해야 하는 조건(들)을 지정합니다. JSON 항목이 결과에서 고려되려면 지정된 조건이 true이여야 합니다. 결과에 포함될 수 있는 소스 항목의 가장 작은 하위 집합을 결정하기 위해 인덱스 계층에서 WHERE 절을 사용합니다.

구문

WHERE <filter_condition>  
<filter_condition> ::= <scalar_expression>
설명
<filter_condition> 반환할 항목에 대해 충족하는 조건을 지정합니다.
<scalar_expression> 계산할 값을 나타내는 식입니다.

참고 항목

스칼라 식에 대한 자세한 내용은 스칼라 식을 참조하세요.

예제

이 첫 번째 예제에서는 간단한 같음 쿼리를 사용하여 항목의 하위 집합을 반환합니다. = 연산자는 WHERE 절과 함께 간단한 같음을 기반으로 필터를 만드는 데 사용됩니다.

SELECT VALUE {
    employeeName: e.name,
    currentTeam: e.team
}
FROM
    employees e
WHERE
    e.team = "Hospitality"
[
  {
    "employeeName": "Jordan Mitchell",
    "currentTeam": "Hospitality"
  },
  {
    "employeeName": "Ashley Schroeder",
    "currentTeam": "Hospitality"
  },
  {
    "employeeName": "Tomas Richardson",
    "currentTeam": "Hospitality"
  }
]

다음 예제에서는 더 복잡한 필터가 스칼라 식으로 구성됩니다.

SELECT VALUE {
    employeeName: e.name,
    vacationDaysRemaining: e.vacationDays
}
FROM
    employees e
WHERE
    e.vacationDays >= 7
[
  {
    "employeeName": "Ana Bowman",
    "vacationDaysRemaining": 10
  },
  {
    "employeeName": "Madison Butler",
    "vacationDaysRemaining": 7
  }
]

이 마지막 예제에서는 부울 속성에 대한 속성 참조를 필터로 사용합니다.

SELECT VALUE {
    employeeName: e.name,
    isPartTime: e.partTime
}
FROM
    employees e
WHERE
    e.partTime
[
  {
    "employeeName": "Riley Ramirez",
    "isPartTime": true
  },
  {
    "employeeName": "Caleb Foster",
    "isPartTime": true
  }
]

설명

  • 항목을 반환하려면 필터 조건으로 지정된 식을 true로 평가해야 합니다. 부울 값 true만 조건을 충족하고 다른 값(undefined, null, false), 숫자 스칼라, 배열 또는 개체가 조건을 충족하지 않습니다.

  • 같음 필터의 일부로 WHERE 절에 파티션 키를 포함하는 경우 쿼리는 관련 파티션에 대해서만 자동으로 필터링합니다.

  • 다음과 같이 지원되는 이항 연산자를 사용할 수 있습니다.

    연산자 예제
    산술 +,-,,/*,%
    비트 단위 \|, &, ^, <<, >>>>> (0 채우기 오른쪽 시프트)
    논리적인 AND, , ORNOT
    비교 =, !=, <, >, <=, >=<>
    String \|\|(연결)