Freigeben über


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 Typenkonstruktor-Operatoren (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 aus, 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.Product
    AS product

Die Ausgabe ist im Folgenden dargestellt:

ProductID: 1
ProductName: Adjustable Race
ProductID: 879
ProductName: All-Purpose Bike Stand
ProductID: 712
ProductName: AWC Logo Cap
ProductID: 3
ProductName: BB Ball Bearing
ProductID: 2
ProductName: Bearing Ball
...

Siehe auch

Konzepte

Typenkonstruktor-Operatoren (Entity SQL)
Entity SQL-Referenz