Поделиться через


DataTable.Compute(String, String) Метод

Определение

Вычисляет заданное выражение для текущих строк, отвечающих условию фильтра.

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

Параметры

expression
String

Вычисляемое выражение.

filter
String

Фильтр, ограничивающий число строк, используемых выражением.

Возвращаемое значение

Класс Object, которому задан результат сравнения. Если выражение имеет значение null, возвращаемое значение будет Value.

Примеры

В следующем примере суммируется значение столбца с именем Total для продавца, идентификационный номер которого равен пяти.

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

Комментарии

Для expression параметра требуется агрегатная функция. Например, ниже приведено юридическое выражение:

Count(Quantity)

Но это выражение не является:

Sum (Quantity * UnitPrice)

Если необходимо выполнить операцию с двумя или более столбцами, необходимо создать DataColumn, задать для его Expression свойства соответствующее выражение и использовать статистическое выражение в результирующем столбце. В этом случае дается DataColumn с именем "total", а свойству Expression присвоено следующее значение:

"Quantity * UnitPrice"

Аргумент выражения для Compute метода будет следующим:

Sum(total)

Второй параметр, , определяет, filterкакие строки используются в выражении. Например, если таблица содержит столбец даты с именем colDate, можно ограничить строки следующим выражением:

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

Правила создания выражений для обоих параметров см. в свойстве DataColumn.Expression .

Применяется к

См. также раздел