Foxtable(狐表)用户栏目专家坐堂 → 求助:统计方法


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

主题:求助:统计方法

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


加好友 发短信
等级:童狐 帖子:277 积分:2328 威望:0 精华:0 注册:2015/4/5 16:28:00
求助:统计方法  发帖心情 Post By:2015/5/30 18:21:00 [只看该作者]

请教:

 不想在表中增加天数的统计字段,如何做啊?


图片点击可在新窗口打开查看此主题相关图片如下:天数统计.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2015/5/30 19:29:49编辑过]

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


加好友 发短信
等级:狐神 帖子:4752 积分:34568 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2015/5/30 21:51:00 [只看该作者]

SQLGroupTableBuilder可以随意生成表达式列滴

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


加好友 发短信
等级:童狐 帖子:277 积分:2328 威望:0 精华:0 注册:2015/4/5 16:28:00
  发帖心情 Post By:2015/5/31 9:20:00 [只看该作者]

不是生成吧?是原表中有表达式列进行统计的吧?

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


加好友 发短信
等级:童狐 帖子:277 积分:2328 威望:0 精华:0 注册:2015/4/5 16:28:00
  发帖心情 Post By:2015/5/31 9:27:00 [只看该作者]

因为我的表现在已经有350列了,太大了,担心一旦有问题不好处理,想用查询或临时表的方式进行统计,或另建一个结构相同的表,用一个列关联,分段保存数据也行,但没有找到办法,有高人指点一下吗?


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/31 9:50:00 [只看该作者]

 就是用SqlGroupBuilder,如

 

Dim b As New SQLGroupTableBuilder("统计表1","项目表")
b.Groups.AddExp("项目")
b.Totals.AddExp("过程1_天数","DateDiff('d', 过程1_开始日期, 过程1_结束日期)")

b.Totals.AddExp("过程2_天数","DateDiff('d', 过程2_开始日期, 过程2_结束日期)")
b.Build
MainTable = Tables("统计表1")

 

 你还可以交叉统计表 http://www.foxtable.com/help/topics/1627.htm

 

 不会做,就请先上传具体例子。

[此贴子已经被作者于2015/5/31 9:51:31编辑过]

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


加好友 发短信
等级:童狐 帖子:277 积分:2328 威望:0 精华:0 注册:2015/4/5 16:28:00
  发帖心情 Post By:2015/5/31 12:11:00 [只看该作者]

Dim b As New SQLGroupTableBuilder("统计表1","业务流程表")
b.Groups.AddDef("报告编号")  '一个报告编号为一个项目
b.Totals.AddExp("检验_天数","DateDiff(d, 检验开始日期, 检验完成日期)")
b.Totals.AddDef("样品数量") '对数量进行统计
b.Build

Tables("任务统计窗口_Table2").DataSource = b.BuildDataSource()


图片点击可在新窗口打开查看此主题相关图片如下:无标题.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:童狐 帖子:277 积分:2328 威望:0 精华:0 注册:2015/4/5 16:28:00
  发帖心情 Post By:2015/5/31 12:20:00 [只看该作者]

确定后:
图片点击可在新窗口打开查看此主题相关图片如下:无标题.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:童狐 帖子:277 积分:2328 威望:0 精华:0 注册:2015/4/5 16:28:00
  发帖心情 Post By:2015/5/31 13:41:00 [只看该作者]

这个统计正常:

Dim b1 As New CrossTableBuilder("统计表1",DataTables("业务流程表"))
Dim d1 As fxDataSource
'b1.Filter = FilterDate1
b1.HGroups.AddDef("报告编号") '添加列用于水平分组
b1.HGroups.AddDef("产品分类") '添加列用于水平分组
b1.VGroups.AddDef("受理日期",DateGroupEnum.Month,"受理_{0}月")
b1.Totals.AddDef("受理日期",AggregateEnum.Count,"受理_数量")
'b1.VerticalTotal= True '垂直汇总
'b1.HorizontalTotal = True '水平汇总
d1 = b1.BuildDataSource()
Tables("任务统计窗口_Table2").DataSource = b1.BuildDataSource()

 

这个就不正常:

Dim b1 As New SQLCrossTableBuilder("统计表1","业务流程表")

Dim d1 As fxDataSource
'b1.Filter = FilterDate1
b1.HGroups.AddDef("报告编号") '添加列用于水平分组
b1.HGroups.AddDef("产品分类") '添加列用于水平分组
b1.VGroups.AddDef("受理日期",DateGroupEnum.Month,"受理_{0}月")
b1.Totals.AddDef("受理日期",AggregateEnum.Count,"受理_数量")
'b1.VerticalTotal= True '垂直汇总
'b1.HorizontalTotal = True '水平汇总
d1 = b1.BuildDataSource()
Tables("任务统计窗口_Table2").DataSource = b1.BuildDataSource()

 

为什么?


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/31 14:22:00 [只看该作者]

 是不是有表达式列。

 

http://www.foxtable.com/help/topics/1627.htm

 

[此贴子已经被作者于2015/5/31 14:22:08编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/31 14:23:00 [只看该作者]

再不会做,就请上传具体的例子。

 回到顶部
总数 12 1 2 下一页