Compartir a través de


Operaciones Set (Visual Basic)

Las operaciones set de LINQ se refieren a operaciones de consulta que generan un conjunto de resultados en función de la presencia o ausencia de elementos equivalentes dentro de la misma colección o en distintas colecciones (o conjuntos).

Los métodos del operador de consulta estándar que realizan operaciones set se indican en la sección siguiente.

Métodos

Nombre del método Descripción Sintaxis de expresiones de consulta de Visual Basic Más información
Distinct o DistinctBy Quita valores duplicados de una colección. Distinct Enumerable.Distinct
Enumerable.DistinctBy
Queryable.Distinct
Queryable.DistinctBy
Except o ExceptBy Devuelve la diferencia de conjuntos, es decir, los elementos de una colección que no aparecen en una segunda colección. No es aplicable. Enumerable.Except
Enumerable.ExceptBy
Queryable.Except
Queryable.ExceptBy
Intersect o IntersectBy Devuelve la intersección de conjuntos, es decir, los elementos que aparecen en las dos colecciones. No es aplicable. Enumerable.Intersect
Enumerable.IntersectBy
Queryable.Intersect
Queryable.IntersectBy
Union o UnionBy Devuelve la unión de conjuntos, es decir, los elementos únicos que aparecen en una de las dos colecciones. No es aplicable. Enumerable.Union
Enumerable.UnionBy
Queryable.Union
Queryable.UnionBy

Comparación de operaciones set

Distinct

En la siguiente ilustración se muestra el comportamiento del método Enumerable.Distinct en una secuencia de caracteres. La secuencia devuelta contiene los elementos únicos de la secuencia de entrada.

Graphic showing the behavior of Distinct().

Except

En la siguiente ilustración se muestra el comportamiento de Enumerable.Except. La secuencia devuelta solo contiene los elementos de la primera secuencia de entrada que no están en la segunda secuencia de entrada.

Graphic showing the action of Except().

Intersect

En la siguiente ilustración se muestra el comportamiento de Enumerable.Intersect. La secuencia devuelta contiene los elementos que son comunes a las dos secuencias de entrada.

Graphic showing the intersection of two sequences.

Union

En la siguiente ilustración se muestra una operación de unión en dos secuencias de caracteres. La secuencia devuelta contiene los elementos únicos de las dos secuencias de entrada.

Graphic showing the union of two sequences.

Ejemplo de sintaxis de expresiones de consulta

En el ejemplo siguiente se usa la cláusula Distinct en una consulta LINQ para devolver los números únicos de una lista de enteros.


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 

Consulte también