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

Definición

Calcula la expresión dada de las filas actuales que cumplen los criterios de filtro.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

Parámetros

expression
String String String String

Expresión que se va a calcular.The expression to compute.

filter
String String String String

Filtro que va a limitar las filas que se evalúan en la expresión.The filter to limit the rows that evaluate in the expression.

Devoluciones

Object establecido en el resultado del cálculo.An Object, set to the result of the computation. Si la expresión se evalúa como null, el valor devuelto será Value.If the expression evaluates to null, the return value will be Value.

Ejemplos

En el ejemplo siguiente se suman los valores de una columna denominada "total", para el vendedor cuyo número de identificación es cinco.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

Comentarios

El expression parámetro requiere una función de agregado.The expression parameter requires an aggregate function. Por ejemplo, la siguiente es una expresión válida:For example, the following is a legal expression:

Count(Quantity)

Pero esta expresión no es:But this expression is not:

Sum (Quantity * UnitPrice)

Si debe realizar una operación en dos o más columnas, debe crear un DataColumn, establecer su Expression propiedad en una expresión adecuada y usar una expresión de agregado en la columna resultante.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. En ese caso, dado un DataColumn con el nombre "total" y la Expression propiedad establecida en:In that case, given a DataColumn with the name "total", and the Expression property set to this:

"Quantity * UnitPrice"

El argumento Expression para el Compute método sería entonces:The expression argument for the Compute method would then be this:

Sum(total)

El segundo parámetro, filter, determina qué filas se usan en la expresión.The second parameter, filter, determines which rows are used in the expression. Por ejemplo, si la tabla contiene una columna de fecha denominada "colDate", puede limitar las filas con la siguiente expresión: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

Para ver las reglas para crear expresiones para ambos parámetros, DataColumn.Expression vea la propiedad.For rules on creating expressions for both parameters, see the DataColumn.Expression property.

Se aplica a

Consulte también: