Sdílet prostřednictvím


Množinové operace

Naleznete sadu operací v LINQ dotazu operací, které vyrobí sadu výsledků založenou na přítomnost nebo nepřítomnost rovnocenné prvky v rámci stejného nebo samostatné kolekce (nebo sad).

Metody operátor standardního dotazu, které provádějí operace sady jsou uvedeny v následující části.

Metody

Název metody

Description

Syntaxi výrazu dotazu C#

Visual BasicSyntaxe dotazu výraz

Další informace

Odlišné

Odstraní duplicitní hodnoty z kolekce.

Nelze použít

Distinct

Enumerable.Distinct``1

Queryable.Distinct``1

S výjimkou

Vrátí sadu rozdíl znamená prvky jedné kolekce, které nejsou uvedeny v druhá kolekce.

Nelze použít

Nelze použít

Enumerable.Except``1

Queryable.Except``1

Průnik

Vrátí průnik set, což znamená prvky, které se zobrazí v každé dvě kolekce.

Nelze použít

Nelze použít

Enumerable.Intersect``1

Queryable.Intersect``1

Sjednocení

Vrátí sadu unie znamená jedinečné prvky, které se zobrazují v buď dvě kolekce.

Nelze použít

Nelze použít

Enumerable.Union``1

Queryable.Union``1

Porovnání sadu operací.

Odlišné

Následující obrázek znázorňuje chování Enumerable.Distinct``1 metodu na posloupnost znaků.Vrácené posloupnost obsahuje jedinečné prvky z vstupní posloupnosti.

Grafika zobrazující chování Distinct().

S výjimkou

Následující obrázek znázorňuje chování Enumerable.Except``1.Vrácené posloupnost obsahuje pouze prvky z první vstupní sekvence, které nejsou v druhém vstupní posloupnosti.

Grafika zobrazující akce EXCEPT().

Průnik

Následující obrázek znázorňuje chování Enumerable.Intersect``1.Vrácené posloupnost obsahuje prvky, které jsou společné pro obě vstupní sekvence.

Grafika zobrazující průniku dvou sekvencí.

Sjednocení

Následující obrázek znázorňuje unie operace na dvě sekvence znaků.Vrácené posloupnost obsahuje jedinečné prvky z obou vstupní sekvence.

Grafika zobrazující sjednocení dvou sekvencí.

Příklad syntaxe výraz dotazu

V následujícím příkladu Distinct klauzule (k dispozici v Visual Basic pouze) v LINQ dotaz vrátit jedinečná čísla ze seznamu celých čísel.

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 

Viz také

Úkoly

Postupy: Kombinace a porovnávání kolekcí řetězců (LINQ)

Postupy: Hledání množinových rozdílů mezi dvěma seznamy (LINQ)

Referenční dokumentace

Distinct – klauzule (Visual Basic)

System.Linq

Koncepty

Přehled standardních operátorů dotazu