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

Définition

Calcule l'expression donnée sur les lignes en cours qui passent les critères du filtre.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

Paramètres

expression
String String String String

Expression à calculer.The expression to compute.

filter
String String String String

Filtre permettant de limiter le nombre de lignes dont le résultat de l'évaluation est contenu dans l'expression.The filter to limit the rows that evaluate in the expression.

Retours

Object ayant pour valeur le résultat du calcul.An Object, set to the result of the computation. Si l'expression prend la valeur Null, la valeur de retour est Value.If the expression evaluates to null, the return value will be Value.

Exemples

L’exemple suivant additionne les valeurs d’une colonne nommée « total » pour le commercial dont le numéro d’identification est cinq.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

Remarques

Le expression paramètre requiert une fonction d’agrégation.The expression parameter requires an aggregate function. Par exemple, voici une expression légale :For example, the following is a legal expression:

Count(Quantity)

Mais cette expression n’est pas :But this expression is not:

Sum (Quantity * UnitPrice)

Si vous devez effectuer une opération sur deux colonnes ou plus, vous devez créer un DataColumn, définir sa Expression propriété sur une expression appropriée et utiliser une expression d’agrégation sur la colonne résultante.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. Dans ce cas, DataColumn avec le nom « total », et la Expression propriété définie sur ce qui suit :In that case, given a DataColumn with the name "total", and the Expression property set to this:

"Quantity * UnitPrice"

L’argument expression de la Compute méthode est alors le suivant :The expression argument for the Compute method would then be this:

Sum(total)

Le deuxième paramètre, filter, détermine les lignes qui sont utilisées dans l’expression.The second parameter, filter, determines which rows are used in the expression. Par exemple, si la table contient une colonne de date nommée « colD », vous pouvez limiter les lignes avec l’expression suivante :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

Pour connaître les règles de création d’expressions pour les deux DataColumn.Expression paramètres, consultez la propriété.For rules on creating expressions for both parameters, see the DataColumn.Expression property.

S’applique à

Voir aussi