以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 获取有重复值记录,有更优化的代码吗? (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=172749) |
-- 作者:9EQ98 -- 发布时间:2021/10/29 7:18:00 -- 获取有重复值记录,有更优化的代码吗? Dim drs As List(of DataRow) = DataTables("生产合同").SQLSelect("1 = 1") \'找出所有记录 Dim 记录数 As Integer = 0 Dim 列表值 As String = "" For Each dr As DataRow In drs \'逐条记录循环,统计相同记录的数量 记录数 = DataTables("生产合同").SQLCompute("Count(*)","生产合同编号 = \'" & dr("生产合同编号") & "\'") If 记录数 > 1 AndAlso 列表值.Contains(dr("生产合同编号")) = False Then 列表值 = 列表值 & dr("生产合同编号") & "|" End If Next 列表值 = 列表值.TrimEnd("|") OUTPUT.SHOW(列表值) 以上代码有更优化的方式吗?
|
-- 作者:有点蓝 -- 发布时间:2021/10/29 8:44:00 -- 做个分组统计 Dim g As New GroupTableBuilder("统计表1", DataTables("生产合同"))
g.Groups.AddDef("生产合同编号") g.Totals.AddDef("生产合同编号",AggregateEnum.Count,"订单数") g.FromServer = True dim dt as datatable = g.Build(true) dim str as string = dt.GetComboListString("生产合同编号","订单数 > 1") |