Where 절(Visual Basic)

업데이트: 2007년 11월

쿼리의 필터링 조건을 지정합니다.

Where condition

구성 요소

  • condition
    필수적 요소. 컬렉션의 현재 항목에 대한 값이 출력 컬렉션에 포함되었는지 여부를 확인하는 식입니다. 식은 Boolean 값이나 Boolean 값에 상응하는 값으로 계산되어야 합니다. 조건이 True로 평가되면 요소는 쿼리 결과에 포함되며 그렇지 않은 경우 요소가 쿼리 결과에서 제외됩니다.

설명

Where 절을 사용하면 특정 조건에 맞는 요소만 선택하여 쿼리 데이터를 필터링할 수 있습니다. 값이 Where 절을 True로 평가되게 만드는 요소는 쿼리 결과에 포함되며 다른 요소는 제외됩니다. Where 절에 사용되는 식은 값이 0일때 False로 평가되는 정수처럼 Boolean 또는 Boolean에 상응하는 값으로 평가되어야 합니다. And, Or, AndAlso, OrElse, Is 및 IsNot과 같은 논리 연산자를 사용하여 Where 절에서 여러 개의 식을 결합할 수 있습니다.

기본적으로 쿼리 식은 액세스될 때까지, 즉 데이터 바인딩되거나 For 루프를 통해 반복될 때까지 평가되지 않습니다. 따라서 Where 절은 쿼리에 액세스될 때까지 평가되지 않습니다. Where 절에서 사용되는 쿼리 외부에 값이 있는 경우 쿼리가 실행될 때 적절한 값이 Where 절에서 사용되게 합니다. 쿼리 실행에 대한 자세한 내용은 LINQ 쿼리 처음 작성(Visual Basic)을 참조하십시오.

Where 절 내에서 함수를 호출하여 컬렉션의 현재 요소에서 값에 대한 계산이나 연산을 수행할 수 있습니다. Where 절에서 함수를 호출하면 쿼리에 액세스할 때가 아닌 정의할 때 바로 실행되게 할 수 있습니다. 쿼리 실행에 대한 자세한 내용은 LINQ 쿼리 처음 작성(Visual Basic)을 참조하십시오.

예제

다음 쿼리 식은 From 절을 사용하여 customers 컬렉션의 각 Customer 개체에 대해 범위 변수 cust를 선언합니다. Where 절은 범위 변수를 사용하여 출력을 지정한 영역의 고객으로 제한합니다. For Each 루프는 각 고객의 회사 이름을 쿼리 결과에 표시합니다.

Sub DisplayCustomersForRegion(ByVal customers As List(Of Customer), _
                              ByVal region As String)

  Dim customersForRegion = From cust In customers _
                           Where cust.Region = region

  For Each cust In customersForRegion
    Console.WriteLine(cust.CompanyName)
  Next
End Sub

참고 항목

개념

Visual Basic의 LINQ 소개

참조

From 절(Visual Basic)

Select 절(Visual Basic)

For Each...Next 문(Visual Basic)

기타 리소스

쿼리(Visual Basic)