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. Для компиляции и запуска этого запроса выполните следующие шаги.
Выполните процедуру из статьи How to: Execute a Query that Returns StructuralType Results.
Передайте следующий запрос в качестве аргумента методу
ExecuteStructuralTypeQuery
:
SELECT VALUE Key(CreateRef(AdventureWorksEntities.Products,
row(p.ProductID))) FROM AdventureWorksEntities.Products AS p