Sdílet prostřednictvím


ROW (Entity SQL)

Vytváří anonymní, strukturálně typované záznamy z jedné nebo více hodnot.

Syntaxe

ROW ( expression [ AS alias ] [,...] )

Argumenty

expression Libovolný platný výraz dotazu, který vrátí hodnotu, která se má vytvořit v typu řádku.

alias Určuje alias pro hodnotu zadanou v typu řádku. Pokud alias není zadaný, entita SQL se pokusí vygenerovat alias na základě pravidel generování aliasů ENTITY SQL.

Návratová hodnota

Typ řádku.

Poznámky

Konstruktory řádků v Entity SQL slouží k vytvoření anonymních, strukturálně zadaných záznamů z jedné nebo více hodnot. Typ výsledku konstruktoru řádku je typ řádku, jehož typy polí odpovídají typům hodnot použitých k vytvoření řádku. Například následující výraz vytvoří hodnotu typu Record(a int, b string, c int).

ROW(1 AS a, "abc" AS b, a+34 AS c)

Pokud nezadáte alias pro výraz v konstruktoru řádku, Entity Framework se pokusí ho vygenerovat. Další informace najdete v části Pravidla aliasů tématu Identifikátory .

Následující pravidla platí pro aliasy výrazů v konstruktoru řádku:

  • Výrazy v konstruktoru řádku nemohou odkazovat na jiné aliasy ve stejném konstruktoru.

  • Dva výrazy ve stejném konstruktoru řádků nemohou mít stejný alias.

Další informace o konstruktorech dotazů naleznete v tématu Vytváření typů.

Příklad

Následující dotaz Entity SQL používá operátor ROW k vytvoření anonymních, strukturálně typovaných záznamů. Dotaz je založený na prodejním modelu AdventureWorks. Chcete-li tento dotaz zkompilovat a spustit, postupujte takto:

  1. Postupujte podle pokynů v části Postupy: Provedení dotazu, který vrací výsledky typu StructuralType.

  2. Jako argument metody ExecuteStructuralTypeQuery předejte následující dotaz:

SELECT VALUE ROW (product.ProductID AS ProductID,
    product.Name AS ProductName) FROM AdventureWorksEntities.Products
    AS product

Viz také