FireDAC.Comp.DataSet.TFDAggregate.Expression

提供: RAD Studio API Documentation
移動先: 案内検索

Delphi

property Expression: String read FExpression write SetExpression;

C++

__property System::UnicodeString Expression = {read=FExpression, write=SetExpression};

プロパティ

種類 可視性 ソース ユニット
property published
FireDAC.Comp.DataSet.pas
FireDAC.Comp.DataSet.hpp
FireDAC.Comp.DataSet TFDAggregate

説明

計算される式を指定します。

Expression プロパティを使用すると、式のテキストを指定できます。式には集計関数が含まれている必要があります。そうでなければ、例外が発生します。以下の集計関数がサポートされています。

関数

説明

SUM

引数値を合計します。

MIN

最小の引数値を返します。

MAX

最大の引数値を返します。

AVG

引数の平均値を計算します。これは、すべての値の合計を NULL でない値の総数で除算したものです。

COUNT

引数が指定された場合は、NULL でない引数値の総数を返します。そうでない場合は、レコードの総数を返します。

TFIRST

最初の引数値を返します。

TLAST

最後の引数値を返します。

集計関数はフィールド値または式に対して実行されます。式は、FireDAC の標準の式構文を使ってフィールド値、定数、スカラ関数呼び出しから構成されます。ただし、以下のようにいくつかの制限事項が適用されます。

メモ:

  • 式を作成するには、集計値と他の集計値または定数に対して演算子を使用します。
  • 集計値とフィールド値を組み合わせることはできません。そのような式は、フィールド値がどのレコードからのものかを示すものがなく、あいまいさがあるからです。
  • 集計関数をネストすることはできません。

式は FireDAC により自動的に評価され、その結果は Value プロパティに割り当てられます。計算はすべて、レコードの現在のグループに対して実行されます。GroupingLevel を使用すると、そのグループ分けを指定できます。

 // count number of records with Discount > 0
 FDQuery1.Aggregates[0].Expression := 'COUNT(IIF(Discount > 0, 1, NULL))';
 
 // OK
 FDQuery1.Aggregates[0].Expression := 'COUNT(*) * 5';
 
 // INVALID - cannot combine aggregating function with field
 FDQuery1.Aggregates[0].Expression := 'AVG(Discount) * Amount';

関連項目