DataTable.Compute(String, String) Metódus

Definíció

Kiszámítja a megadott kifejezést az aktuális sorokon, amelyek megfelelnek a szűrési feltételeknek.

public:
 System::Object ^ Compute(System::String ^ expression, System::String ^ filter);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members of types used in the filter or expression might be trimmed.")]
public object Compute(string? expression, string? filter);
public object Compute(string? expression, string? filter);
public object Compute(string expression, string filter);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members of types used in the filter or expression might be trimmed.")>]
member this.Compute : string * string -> obj
member this.Compute : string * string -> obj
Public Function Compute (expression As String, filter As String) As Object

Paraméterek

expression
String

A kiszámítandó kifejezés.

filter
String

A kifejezésben kiértékelt sorok korlátozására vonatkozó szűrő.

Válaszok

Egy Object, a számítás eredményére állítva. Ha a kifejezés null értékű, a visszatérési érték a következő lesz Value: .

Attribútumok

Példák

Az alábbi példa egy "Total" nevű oszlop értékeit összegzi annak az értékesítőnek, akinek az azonosítószáma öt.

private void ComputeBySalesSalesID(DataSet dataSet)
{
    // Presumes a DataTable named "Orders" that has a column named "Total."
    DataTable table;
    table = dataSet.Tables["Orders"];

    // Declare an object variable.
    object sumObject;
    sumObject = table.Compute("Sum(Total)", "EmpID = 5");
}
Private Sub ComputeBySalesSalesID(ByVal dataSet As DataSet)
    ' Presumes a DataTable named "Orders" that has a column named "Total."
    Dim table As DataTable
    table = dataSet.Tables("Orders")

    ' Declare an object variable.
    Dim sumObject As Object
    sumObject = table.Compute("Sum(Total)", "EmpID = 5")
 End Sub

Megjegyzések

A expression paraméterhez aggregátumfüggvény szükséges. A következő például egy jogi kifejezés:

Count(Quantity)

Ez a kifejezés azonban nem:

Sum (Quantity * UnitPrice)

Ha két vagy több oszlopon kell végrehajtania egy műveletet, hozzon létre egy DataColumn, a tulajdonságát Expression egy megfelelő kifejezésre, és használjon egy összesített kifejezést az eredményként kapott oszlopon. Ebben az esetben adja DataColumn meg a "total" nevet, és a Expression tulajdonság a következőre van állítva:

"Quantity * UnitPrice"

A metódus kifejezésargumentuma Compute a következő:

Sum(total)

A második paraméter határozza meg, filterhogy mely sorokat használja a kifejezés. Ha például a tábla egy "colDate" nevű dátumoszlopot tartalmaz, a sorokat a következő kifejezéssel korlátozhatja:

colDate > 1/1/99 AND colDate < 17/1/99

A két paraméter kifejezéseinek létrehozására vonatkozó szabályokért tekintse meg a tulajdonságot DataColumn.Expression .

A következőre érvényes:

Lásd még