Foxtable(狐表)用户栏目专家坐堂 → SQL统计表统计不重复统计问题


  共有2685人关注过本帖树形打印复制链接

主题:SQL统计表统计不重复统计问题

帅哥哟,离线,有人找我吗?
douglas738888
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1172 积分:8772 威望:0 精华:0 注册:2012/4/18 16:28:00
SQL统计表统计不重复统计问题  发帖心情 Post By:2017/6/22 19:49:00 [只看该作者]

请教老师,在进行SQL统计的时候,下列代码如何应用GetValues统计不重复的行

Dim b As New SQLGroupTableBuilder......

b.Groups.AddDef("日期", DateGroupEnum.Year, "年度")
b.Groups.AddDef("任务人员")

....

b.Totals.AddExp("项目名称","项目名称",AggregateEnum.count)

[此贴子已经被作者于2017/6/22 19:58:26编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/23 0:21:00 [只看该作者]

不能统计不重复行。

 

你需要在生成统计表以后,循环每一行,重新统计赋值。


 回到顶部
帅哥哟,离线,有人找我吗?
douglas738888
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1172 积分:8772 威望:0 精华:0 注册:2012/4/18 16:28:00
  发帖心情 Post By:2017/6/24 14:59:00 [只看该作者]

老师,如果是如下列代码已生成统计表后,怎样再从后台循环统计不重复值(如以任务部室为基础,后台统计不重复的项目数量赋值到对应的任务部室)赋值到统计表中

 

Dim b3 As New SQLGroupTableBuilder("统计表04","个人明细")
b3.C
b3.Groups.AddDef("日期", DateGroupEnum.Year, "年度")
b3.Groups.AddDef("任务部室")
b3.Totals.AddDef("项目编号",AggregateEnum.Count,"参与项目数量")
b3.Totals.AddExp("进度计量","进度计量*1","任务进度",AggregateEnum.Sum)
b3.Totals.AddExp("难度计量","难度计量*1","任务难度",AggregateEnum.Sum)

b3.Filter = "日期 >= '" & e.Form.Controls("DateTimePicker5").Value & "' And 日期 <= '" & e.Form.Controls("DateTimePicker6").Value & "'" 
'b3.VerticalTotal = True
Tables("总体分析_Table4").DataSource = b3.BuildDataSource()

[此贴子已经被作者于2017/6/24 15:00:43编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106209 积分:540168 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/6/24 15:03:00 [只看该作者]

请上传实例测试。不同表结构用法不一样

 回到顶部
帅哥哟,离线,有人找我吗?
douglas738888
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1172 积分:8772 威望:0 精华:0 注册:2012/4/18 16:28:00
  发帖心情 Post By:2017/6/24 17:36:00 [只看该作者]

测试文件

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:不重复值测试.zip

 

[此贴子已经被作者于2017/6/25 12:43:03编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
douglas738888
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1172 积分:8772 威望:0 精华:0 注册:2012/4/18 16:28:00
  发帖心情 Post By:2017/6/25 12:43:00 [只看该作者]

请老师帮忙看看,谢谢!


 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/25 13:28:00 [只看该作者]

    Tables("测试_Table1").DataSource = b3.BuildDataSource()
    For Each r As Row In Tables("测试_Table1").Rows
        r("参与项目数量") = DataTables("表a").sqlGetValues("项目编号", b3.filter & " and 部门 = '" & r("部门") & "' and year(日期) = " & r("年度")).count
    Next

 回到顶部