语法:Function AggFunctionName(Flag:Integer;Value:[Boolean|Any]):[Boolean|Any];
说明
flag的值表示调用该函数时的状态。
0:聚集的初始化
value 为真则是DISTINCT,否则为所有。
返回为真表示成功,为假则失败。
1:行数据
value为当前行的表达式执行的值。
返回为真表示成功,为假则失败。
2:聚集结束
返回聚集函数的执行结果。
范例:求和的聚集函数,其中利用系统参数来缓存数据。
Function AggSumSample(Flag,Value);
begin
if FLag=0 then
begin
SysParams["SumSample"]:=0;
return true;
end
else if Flag=1 then
begin
SysParams["SumSample"]:=SysParams["SumSample"]+Value;
return true;
end
else
return SysParams["SumSample"];
end;