最近需要提取不重复的记录集合:
1、提取不重复记录值的集合有DataTable的GetUniqueValues,字符串有DataTable的GetComboListString
2、数据填充器可以提取不重复的记录集合,但是字段个数有限
dim f As New Filler
f.SourceTable = DataTables("订单") '指定数据来源
f.SourceCols = "产品,客户" '指定数据来源列
f.DataTable = DataTables("统计") '指定数据接收表
f.DataCols = "产品,客户" '指定数据接收列
f.Fill() '填充数据
3、SQL 中也可以提取不重复的记录集合,如果不另外处理,字段个数也有限
Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.CommandText = "SELECT DISTINCT 产品,客户 From {订单}"
dt = cmd.ExecuteReader()
4、菜单Syscmd.Filter.HideSameValues()对当前表排除重复值,这样可以获取不重复记录集合,可是只可以对单一的字段
5、目前DataTable的Select方法只是提取一般的记录集合,功能水平一般呢
所以有个设想,DataTable的Select方法是记录集合的,那么以此为基础点,增强这个功能,让它可以支持“提取关于几个关键字之不重复的记录集合”
如果整合以上几种功能方案,相信这个“提取不重复的记录集合”的功能应当可以实现
如果能这样,那么就可以纯粹地使用FoxTable自身的方案,而不用这么鸡肋地拼凑。