KEY (Entity SQL)

参照またはエンティティ式のキーを抽出します。

KEY(createref_expression)

解説

エンティティ キーには、指定されたエンティティまたはエンティティ参照の正しい順序でキー値が格納されます。 複数のエンティティ セットが同じ型に基づくことができるので、同じキーがそれぞれのエンティティ セットで使用される場合があります。 一意の参照を取得するには、REF を使用します。 KEY 演算子の戻り値の型は、同じ順序でエンティティの各キーの 1 つのフィールドを含む行型です。

次の例では、キー演算子は、BadOrder エンティティへの参照に渡され、その参照のキー部分を返します。 この場合、Id プロパティに対応する 1 つだけのフィールドを持つレコード型です。

select Key( CreateRef(LOB.BadOrders, row(o.Id)) ) 
from LOB.Orders as o

次の Entity SQL クエリは、KEY 演算子を使用して、型参照を持つ式のキー部分を抽出します。 このクエリは、AdventureWorks Sales Model に基づいています。 このクエリをコンパイルして実行するには、次の手順を実行します。

  1. Follow the procedure in StructuralType 結果を返すクエリの実行方法 (EntityClient).

  2. Pass the following query as an argument to the ExecuteStructuralTypeQuery method:

SELECT VALUE Key(CreateRef(AdventureWorksEntities.Products, 
    row(p.ProductID))) FROM AdventureWorksEntities.Products as p

参照

リファレンス

CREATEREF (Entity SQL)
REF (Entity SQL)
DEREF (Entity SQL)

概念

Entity SQL リファレンス