KEY (Entity SQL)

Извлекает ключ ссылки или выражение сущности.

Синтаксис

KEY(createref_expression)  

Замечания

Ключ сущности содержит значения ключа в правильном порядке указанной сущности или ссылки на сущность. На одном и том же типе сущности могут быть основаны разные наборы сущностей, поэтому в каждом наборе сущностей может появиться одинаковый ключ. Для получения уникальной ссылки используйте REF. Возвращаемый тип оператора KEY – это тип строки, включающий одно поле для каждого ключа сущности в том же порядке.

В следующем примере оператору ключа передается ссылка на сущность BadOrder, и он возвращает ключевую часть этой ссылки. В данном случае – тип записи точно с одним полем, соответствующим свойству Id .

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

Пример

В следующем запросе Entity SQL используется оператор KEY с целью извлечения ключевой части выражения со ссылкой на тип. Запрос основан на модели AdventureWorks Sales. Для компиляции и запуска этого запроса выполните следующие шаги.

  1. Выполните процедуру из статьи How to: Execute a Query that Returns StructuralType Results.

  2. Передайте следующий запрос в качестве аргумента методу ExecuteStructuralTypeQuery :

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

См. также