MULTISET (Entity SQL)

値のリストからマルチセットのインスタンスを作成します。 MULTISET コンストラクターの値はすべて、互換性のある型 Tである必要があります。 空のマルチセット コンストラクターは使用できません。

構文

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

引数

expression 任意の有効な値のリスト。

戻り値

MULTISET<T> 型のコレクション。

Remarks

Entity SQL には、行コンストラクター、オブジェクト コンストラクター、およびマルチセット (またはコレクション) コンストラクターの 3 種類のコンストラクターが用意されています。 詳しくは、「コンストラクター」をご覧ください。

マルチセット コンストラクターは、値のリストからマルチセットのインスタンスを作成します。 このコンストラクターの値はすべて、互換性のある型である必要があります。

たとえば、次の式は整数のマルチセットを作成します。

MULTISET(1, 2, 3)

{1, 2, 3}

Note

入れ子になったマルチセット リテラルは、{{1, 2, 3}} のように、外側のマルチセットに含まれているマルチセット要素が 1 つである場合にのみサポートされます。 複数のマルチセット要素が外側のマルチセットに含まれている場合 ( {{1, 2}, {3, 4}}など)、入れ子になったマルチセット リテラルはサポートされません。

次の Entity SQL クエリでは、MULTISET 演算子を使用して、値のリストからマルチセットのインスタンスを作成します。 このクエリは、AdventureWorks Sales Model に基づいています。 このクエリをコンパイルして実行するには、次の手順を実行します。

  1. 方法: StructuralType 結果を返すクエリを実行する」の手順に従います。

  2. 次のクエリを引数として ExecuteStructuralTypeQuery メソッドに渡します。

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

関連項目