Udostępnij za pośrednictwem


ROW (Entity SQL)

Tworzy anonimowe, strukturalnie typizowane rekordy z co najmniej jednej wartości.

Składnia

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

Argumenty

expression Dowolne prawidłowe wyrażenie zapytania, które zwraca wartość do konstruowania w typie wiersza.

alias Określa alias dla wartości określonej w typie wiersza. Jeśli alias nie jest podany, usługa Entity SQL próbuje wygenerować alias na podstawie reguł generowania aliasów jednostki SQL.

Wartość zwracana

Typ wiersza.

Uwagi

Konstruktory wierszy w jednostce SQL służą do konstruowania anonimowych, strukturalnie typiowanych rekordów z co najmniej jednej wartości. Typ wyniku konstruktora wiersza to typ wiersza, którego typy pól odpowiadają typom wartości używanych do konstruowania wiersza. Na przykład następujące wyrażenie konstruuje wartość typu Record(a int, b string, c int).

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

Jeśli nie podasz aliasu dla wyrażenia w konstruktorze wiersza, program Entity Framework spróbuje go wygenerować. Aby uzyskać więcej informacji, zobacz sekcję "Reguły aliasowania" tematu Identyfikatory .

Następujące reguły dotyczą aliasów wyrażeń w konstruktorze wiersza:

  • Wyrażenia w konstruktorze wiersza nie mogą odwoływać się do innych aliasów w tym samym konstruktorze.

  • Dwa wyrażenia w tym samym konstruktorze wiersza nie mogą mieć tego samego aliasu.

Aby uzyskać więcej informacji na temat konstruktorów zapytań, zobacz Konstruowanie typów.

Przykład

Następujące zapytanie Entity SQL używa operatora ROW do konstruowania anonimowych, strukturalnie typiowanych rekordów. Zapytanie jest oparte na modelu AdventureWorks Sales. Aby skompilować i uruchomić to zapytanie, wykonaj następujące kroki:

  1. Postępuj zgodnie z procedurą w temacie Instrukcje: wykonywanie zapytania zwracającego wyniki StructuralType.

  2. Przekaż następujące zapytanie jako argument do ExecuteStructuralTypeQuery metody :

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

Zobacz też