ROW (Entity SQL)

Erstellt anonyme, strukturell typisierte Datensätze aus einem oder mehreren Werten.

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

Argumente

  • expression
    Ein gültiger Abfrageausdruck, der einen Wert zum Erstellen eines Zeilentyps zurückgibt.
  • alias
    Gibt einen Alias für den in einem Zeilentyp angegebenen Wert an. Wenn kein Alias angegeben wird, generiert Entity SQL mithilfe der Aliasgenerierungsregeln von Entity SQL einen Alias.

Rückgabewert

Ein Zeilentyp.

Hinweise

Zeilenkonstruktoren werden in Entity SQL zur Erstellung anonymer, strukturell typisierter Datensätze aus einem oder mehreren Werten verwendet. Beim Ergebnistyp eines Zeilenkonstruktors handelt es sich um einen Zeilentyp, dessen Feldtypen den Typen der zur Erstellung der Zeile verwendeten Werten entsprechen. Im folgenden Ausdruck wird beispielsweise ein Wert vom Typ Record(a int, b string, c int) erstellt.

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

Wenn für einen Ausdruck in einem Zeilenkonstruktor kein Alias angegeben wird, wird ein Alias vom Entity Framework generiert. Weitere Informationen finden Sie im Abschnitt "Regeln für das Aliasing" im Thema Bezeichner.

Die folgenden Regeln gelten für Ausdrucksaliasing in einem Zeilenkonstruktor:

  • Ausdrücke in einem Zeilenkonstruktor können nicht auf andere Aliase im gleichen Konstruktor verweisen.

  • Zwei Ausdrücke im gleichen Zeilenkonstruktor können nicht über den gleichen Alias verfügen.

Weitere Informationen über Abfragekonstruktoren finden Sie unter Konstruktionstypen (Entity SQL).

Beispiel

In der folgenden Entity SQL-Abfrage wird der ROW-Operator zur Erstellung anonymer, strukturell typisierter Datensätze verwendet. Die Abfrage basiert auf dem AdventureWorks Sales-Modell. Führen Sie folgende Schritte durch, um diese Abfrage zu kompilieren und auszuführen:

  1. Verwenden Sie das Verfahren unter Gewusst wie: Ausführen einer Abfrage, die StructuralType-Ergebnisse zurückgibt (EntityClient).

  2. Übergeben Sie die folgende Abfrage als Argument an die ExecuteStructuralTypeQuery-Methode:

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

Siehe auch

Konzepte

Konstruktionstypen (Entity SQL)
Entity SQL-Referenz
Typdefinitionen (Entity SQL)