Udostępnij za pośrednictwem


MULTISET (Entity SQL)

Tworzy wystąpienie wielozestawu na podstawie listy wartości. Wszystkie wartości w konstruktorze MULTISET muszą mieć zgodny typ T. Puste konstruktory wielozestawowe nie są dozwolone.

Składnia

MULTISET ( expression [{, expression }] )
-- or
{ expression [{, expression }] }

Argumenty

expression Dowolna prawidłowa lista wartości.

Wartość zwracana

Kolekcja typu MULTISET<T>.

Uwagi

Jednostka SQL udostępnia trzy rodzaje konstruktorów: konstruktorów wierszy, konstruktorów obiektów i konstruktorów wielozestawowych (lub kolekcji). Aby uzyskać więcej informacji, zobacz Konstruowanie typów.

Konstruktor wielozestawowy tworzy wystąpienie wielozestawu na podstawie listy wartości. Wszystkie wartości w konstruktorze muszą być zgodnego typu.

Na przykład poniższe wyrażenie tworzy wielozestaw liczb całkowitych.

MULTISET(1, 2, 3)

{1, 2, 3}

Uwaga

Zagnieżdżone literały wielozestawowe są obsługiwane tylko wtedy, gdy zawijanie wielu zestawów ma jeden element wielozestawowy; na przykład {{1, 2, 3}}. Jeśli zawijanie wielu zestawów zawiera wiele elementów wielozestawowych (na przykład {{1, 2}, {3, 4}}), zagnieżdżone literały wielozestawowe nie są obsługiwane.

Przykład

Następujące zapytanie Entity SQL używa operatora MULTISET do utworzenia wystąpienia wielozestawu na podstawie listy wartości. Zapytanie jest oparte na modelu AdventureWorks Sales. Aby skompilować i uruchomić to zapytanie, wykonaj następujące kroki:

  1. Postępuj zgodnie z procedurą w temacie Instrukcje: wykonywanie zapytania zwracającego wyniki StructuralType.

  2. Przekaż następujące zapytanie jako argument do ExecuteStructuralTypeQuery metody :

SELECT VALUE product FROM AdventureWorksEntities.Products 
    AS product 
WHERE product.ListPrice IN MultiSet (@price1, @price2)

Zobacz też