Megosztás a következőn keresztül:


Műveletek beállítása (Visual Basic)

A LINQ beállítási műveletei olyan lekérdezési műveletekre vonatkoznak, amelyek olyan eredményhalmazt hoznak létre, amely az azonos vagy különálló gyűjteményekben (vagy készletekben) lévő egyenértékű elemek meglétén vagy hiányán alapul.

A halmazműveleteket végrehajtó szabványos lekérdezési operátor-metódusok a következő szakaszban találhatók.

Metódusok

Metódus neve Leírás Visual Basic Query Expression Szintaxis További információ
Distinct vagy DistinctBy Eltávolítja az ismétlődő értékeket egy gyűjteményből. Distinct Enumerable.Distinct
Enumerable.DistinctBy
Queryable.Distinct
Queryable.DistinctBy
Kivéve vagy ExceptBy A készletkülönbséget adja vissza, ami azt jelenti, hogy egy gyűjtemény olyan elemei, amelyek nem jelennek meg egy második gyűjteményben. Nem alkalmazható. Enumerable.Except
Enumerable.ExceptBy
Queryable.Except
Queryable.ExceptBy
Metszet vagy intersectBy A megadott metszetet adja vissza, ami azt jelenti, hogy a két gyűjtemény mindegyikében megjelennek elemek. Nem alkalmazható. Enumerable.Intersect
Enumerable.IntersectBy
Queryable.Intersect
Queryable.IntersectBy
Union vagy UnionBy A halmaz egyesítő értékét adja vissza, ami azt jelenti, hogy a két gyűjtemény bármelyikében megjelenő egyedi elemek jelennek meg. Nem alkalmazható. Enumerable.Union
Enumerable.UnionBy
Queryable.Union
Queryable.UnionBy

Halmazműveletek összehasonlítása

Distinct

Az alábbi ábra a metódus viselkedését Enumerable.Distinct mutatja be egy karaktersorozaton. A visszaadott sorozat a bemeneti sorozat egyedi elemeit tartalmazza.

Graphic showing the behavior of Distinct().

Kivéve

Az alábbi ábrán a következő ábra szemlélteti a következő viselkedését Enumerable.Except: A visszaadott sorozat csak az első bemeneti sorozat azon elemeit tartalmazza, amelyek nem szerepelnek a második bemeneti sorozatban.

Graphic showing the action of Except().

Metszi

Az alábbi ábrán a következő ábra szemlélteti a következő viselkedését Enumerable.Intersect: A visszaadott sorozat tartalmazza azokat az elemeket, amelyek mindkét bemeneti sorozatban közösek.

Graphic showing the intersection of two sequences.

Union

Az alábbi ábra egy egyesítési műveletet ábrázol két karaktersorozaton. A visszaadott sorozat mindkét bemeneti sorozat egyedi elemeit tartalmazza.

Graphic showing the union of two sequences.

Példa lekérdezési kifejezés szintaxisára

Az alábbi példa egy Distinct LINQ-lekérdezés záradékával adja vissza az egyedi számokat az egész számok listájából.


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 

Lásd még