指定列の最大値/最小値/合計値/平均値/行数を取得する方法。

  DataTable の特定列の最大値/最小値/合計値/平均値等の集約計算を行うには、「Compute()」メソッドを使用します。
 このメソッドには集約式と対象となる行を制限するフィルターを指定することができます。
【使い方】

 (1) DataTable の全行で集約計算します。
  // dt は DataTable

  // 最大値を求める
 object value = dt.Compute(Max("列名"), null);
  // 最小値を求める
 object value = dt.Compute(Min("列名"), null);
  // 合計値を求める
 object value = dt.Compute(Sum("列名"), null);
  // 平均値を求める
 object value = dt.Compute(Ave("列名"), null);
  // 行数を求める
 object value = dt.Compute(Count("列名"), null); 
 (2) DataTable の抽出列で集計計算します。(例:キー列の値が100を超えるもの)
  // dt は DataTable

  // 最大値を求める
 object value = dt.Compute(Max("列名"), "[キー列]>100");
  // 最小値を求める
 object value = dt.Compute(Min("列名"), "[キー列]>100");
  // 合計値を求める
 object value = dt.Compute(Sum("列名"), "[キー列]>100");
  // 平均値を求める
 object value = dt.Compute(Ave("列名"), "[キー列]>100");
  // 行数を求める
 object value = dt.Compute(Count("列名"), "[キー列]>100");

  尚、フィルターの詳細は、「DataColumn.Expression プロパティ」の解説を参照ください。 
【注意】
DataTable に行がない場合は、集約機能が null 参照 (Visual Basic では Nothing) を返します。
戻る