DataTable.Compute(String, String) DataTable.Compute(String, String) DataTable.Compute(String, String) DataTable.Compute(String, String) Method

Определение

Вычисляет заданное выражение для текущих строк, отвечающих условию фильтра.Computes the given expression on the current rows that pass the filter criteria.

public:
 System::Object ^ Compute(System::String ^ expression, System::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 String String String

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

filter
String String String String

Фильтр, ограничивающий число строк, используемых выражением.The filter to limit the rows that evaluate in the expression.

Возвраты

Класс Object, которому задан результат сравнения.An Object, set to the result of the computation. Если выражение имеет значение null, возвращаемое значение будет Value.If the expression evaluates to null, the return value will be Value.

Примеры

Следующий пример суммирует значения столбца с именем «Итог», для менеджеров по продажам, которого идентификатор равен пяти.The following example sums the values of a column named "Total", for the salesperson whose identification number is five.

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 Параметр требует наличия статистической функции.The expression parameter requires an aggregate function. Например следующее выражение является допустимым:For example, the following is a legal expression:

Count(Quantity)

Но это выражение не является:But this expression is not:

Sum (Quantity * UnitPrice)

Если необходимо выполнить операцию для двух или нескольких столбцов, следует создать DataColumn, задайте его Expression присваивается соответствующее выражение, а использование статистическое выражение на результирующего столбца.If you must perform an operation on two or more columns, you should create a DataColumn, set its Expression property to an appropriate expression, and use an aggregate expression on the resulting column. В этом случае, учитывая DataColumn с именем «итог» и Expression значение этого свойства:In that case, given a DataColumn with the name "total", and the Expression property set to this:

"Quantity * UnitPrice"

Аргумент-выражение для Compute метод будет иметь это:The expression argument for the Compute method would then be this:

Sum(total)

Второй параметр, filter, определяет, какие строки используются в выражении.The second parameter, filter, determines which rows are used in the expression. Например если таблица содержит столбец даты с именем «colDate», можно ограничить строки со следующим выражением:For example, if the table contains a date column named "colDate", you could limit the rows with the following expression:

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

Правила создания выражений для обоих параметров, см. в разделе DataColumn.Expression свойство.For rules on creating expressions for both parameters, see the DataColumn.Expression property.

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

Дополнительно