Udostępnij za pośrednictwem


DataTable.Compute(String, String) Metoda

Definicja

Oblicza podane wyrażenie w bieżących wierszach, które przekazują kryteria filtrowania.

public:
 System::Object ^ Compute(System::String ^ expression, System::String ^ filter);
public object Compute (string? expression, string? filter);
public object Compute (string expression, string filter);
member this.Compute : string * string -> obj
Public Function Compute (expression As String, filter As String) As Object

Parametry

expression
String

Wyrażenie do obliczenia.

filter
String

Filtr, aby ograniczyć wiersze, które są obliczane w wyrażeniu.

Zwraca

Wartość Object, ustawiona na wynik obliczeń. Jeśli wyrażenie zwróci wartość null, zwracana wartość to Value.

Przykłady

Poniższy przykład sumuje wartości kolumny o nazwie "Total" dla sprzedawcy, którego numer identyfikacyjny wynosi pięć.

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

Uwagi

Parametr expression wymaga funkcji agregującej. Na przykład następujące wyrażenie jest wyrażeniem prawnym:

Count(Quantity)

Ale to wyrażenie nie jest następujące:

Sum (Quantity * UnitPrice)

Jeśli musisz wykonać operację na co najmniej dwóch kolumnach, należy utworzyć DataColumnwłaściwość , ustawić jej Expression właściwość na odpowiednie wyrażenie i użyć wyrażenia agregacji w kolumnie wynikowej. W takim przypadku nadać DataColumn nazwę "total" i Expression właściwość ustawioną na następującą:

"Quantity * UnitPrice"

Argument wyrażenia dla Compute metody będzie następujący:

Sum(total)

Drugi parametr określa filter, które wiersze są używane w wyrażeniu. Jeśli na przykład tabela zawiera kolumnę daty o nazwie "colDate", możesz ograniczyć wiersze za pomocą następującego wyrażenia:

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

Aby uzyskać reguły tworzenia wyrażeń dla obu parametrów, zobacz DataColumn.Expression właściwość .

Dotyczy

Zobacz też