我需要使用TClientdataset制作一些聚合 .在SQL中,这些聚合可以使用以下脚本完成:
Select Sum(column1) from table1 where Date_Column < Date_Value
Run Code Online (Sandbox Code Playgroud)
因为我需要在很长的进程和非常慢的网络中获得更高的速度,所以我想使用内存中的聚合而不是使用sql.我的想法是使用Expression向ClientDataset添加聚合,如下所示:
Sum(column1)
Run Code Online (Sandbox Code Playgroud)
并生成Date_Column索引,然后像这样过滤clientdataset:
myClientdataset.SetRang([value1],[value2]);
Run Code Online (Sandbox Code Playgroud)
我期待看到这个范围的总结果,但是,不幸的是聚合忽略范围并继续给出所有记录的结果!
所以,我的问题是:如何在TClientdataset中实现这一目标?或者,您是否有任何其他想法如何在内存中进行远程聚合?