LINQ의 설정 작업은 동일하거나 별도의 컬렉션(또는 집합) 내에서 동등한 요소의 존재 또는 부재를 기반으로 하는 결과 집합을 생성하는 쿼리 작업을 참조합니다.
집합 작업을 수행하는 표준 쿼리 연산자 메서드는 다음 섹션에 나열됩니다.
메서드
메서드 이름 | 설명 | Visual Basic 쿼리 식 구문 | 더 많은 정보 |
---|---|---|---|
Distinct 또는 DistinctBy | 컬렉션에서 중복 값을 제거합니다. | Distinct |
Enumerable.Distinct Enumerable.DistinctBy Queryable.Distinct Queryable.DistinctBy |
"Except" 또는 "ExceptBy" | 집합 차이를 반환합니다. 즉, 두 번째 컬렉션에 나타나지 않는 한 컬렉션의 요소를 의미합니다. | 적용할 수 없습니다. | Enumerable.Except Enumerable.ExceptBy Queryable.Except Queryable.ExceptBy |
Intersect 함수 또는 IntersectBy 함수 | 두 컬렉션에 각각 표시되는 요소를 의미하는 교집합을 반환합니다. | 적용할 수 없습니다. | Enumerable.Intersect Enumerable.IntersectBy Queryable.Intersect Queryable.IntersectBy |
Union 또는 UnionBy | 두 컬렉션 중 하나에 표시되는 고유한 요소를 의미하는 합집합을 반환합니다. | 적용할 수 없습니다. | Enumerable.Union Enumerable.UnionBy Queryable.Union Queryable.UnionBy |
설정 작업 비교
별개
다음 그림에서는 문자 시퀀스에 대한 Enumerable.Distinct 메서드의 동작을 보여 줍니다. 반환된 시퀀스에는 입력 시퀀스의 고유한 요소가 포함됩니다.
제외
다음 그림에서는 .의 Enumerable.Except동작을 보여 줍니다. 반환된 시퀀스에는 두 번째 입력 시퀀스에 없는 첫 번째 입력 시퀀스의 요소만 포함됩니다.
교차
다음 그림에서는 .의 Enumerable.Intersect동작을 보여 줍니다. 반환된 시퀀스에는 입력 시퀀스 둘 다에 공통적으로 있는 요소가 포함됩니다.
연합
다음 그림은 두 문자 배열에 대한 합집합 연산을 보여줍니다. 반환된 시퀀스에는 두 입력 시퀀스의 고유한 요소가 모두 포함됩니다.
쿼리 식 구문 예제
다음 예제에서는 LINQ 쿼리의 Distinct
절을 사용하여 정수 목록에서 고유 번호를 반환합니다.
Dim classGrades = New System.Collections.Generic.List(Of Integer) From {63, 68, 71, 75, 68, 92, 75}
Dim distinctQuery = From grade In classGrades
Select grade Distinct
Dim sb As New System.Text.StringBuilder("The distinct grades are: ")
For Each number As Integer In distinctQuery
sb.Append(number & " ")
Next
' Display the results.
MsgBox(sb.ToString())
' This code produces the following output:
' The distinct grades are: 63 68 71 75 92
참고하십시오
.NET