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:
Postępuj zgodnie z procedurą w temacie Instrukcje: wykonywanie zapytania zwracającego wyniki StructuralType.
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)