Export (0) Print
Expand All

DataTable::Compute Method

Computes the given expression on the current rows that pass the filter criteria.

Namespace:  System.Data
Assembly:  System.Data (in System.Data.dll)

Object^ Compute(
	String^ expression, 
	String^ filter


Type: System::String

The expression to compute.

Type: System::String

The filter to limit the rows that evaluate in the expression.

Return Value

Type: System::Object
An Object, set to the result of the computation. If the expression evaluates to null, the return value will be DBNull::Value.

The expression parameter requires an aggregate function. For example, the following is a legal expression:


But this expression is not:

Sum (Quantity * UnitPrice)

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. In that case, given a DataColumn with the name "total", and the Expression property set to this:

"Quantity * UnitPrice"

The expression argument for the Compute method would then be this:


The second parameter, filter, determines which rows are used in the expression. 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

For rules on creating expressions for both parameters, see the DataColumn::Expression property.

The following example sums the values of a column named "Total", for the salesperson whose identification number is five.

No code example is currently available or this language may not be supported.

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0
© 2015 Microsoft