Foxtable(狐表)用户栏目专家坐堂 → 统计排序问题


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

主题:统计排序问题

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


加好友 发短信
等级:三尾狐 帖子:668 积分:5053 威望:0 精华:0 注册:2011/10/22 13:37:00
统计排序问题  发帖心情 Post By:2014/8/30 17:14:00 [只看该作者]

SQLGroupTableBuilder包括以下属性:

ConnectionName:  指定数据源名称,如果省略,表示使用内部数据表。
Caption:         字符型,指定新生成统计表的标题。
Groups:           集合,用于添加分组列。
Totals:           集合,用于添加统计列。
VerticalTotal:   逻辑型,设为True,垂直方向自动增加汇总行。
Subtotal:        逻辑型,设为True,将对分组统计结果进行二次统计,生成汇总模式。
Decimals:        整数型,用于设置统计结果要保留的小数位数,默认为4位。
SamePeriodGrowth:逻辑型,是否生成同比增长率。
CircleGrowth:    逻辑型,是否生成环比增长率。
GrandProportion: 逻辑型,是否生成总占比。
GroupProportion: 逻辑型,是否生成分组占比。
 
Filter:           字符型,设置统计条件。
CommandTimeOut:  整数型,用于设置统计后台数据的超时时限,默认为30秒,一般不需要设置此属性,除非需要进行非常耗时超过30秒的统计,以至于出现超时错误,此时可适当地加大CommandTimeOut属性的值。

在Groups集合中添加一个分组列的语法是: 

Groups.AddDef(Name)
Groups.AddDef(Name, NewName)
Groups.AddDef(Name, NewName, NewCaption)
Groups.AddDef(Name, DateGroup)
Groups.AddDef(Name, DateGroup, NewName)
Groups.AddDef(Name, DateGroup, NewName, NewCaption)

参数说明

Name:        字符型,指定分组列。
NewName:     字符型,用于给分组列指定一个新的名称,这个名称在统计表中显示。
NewCaption:  字符型,用于给分组列设置标题。
DateGroup:  DateGroupEnum型枚举,如果分组列是日期列,可用此属性指定如何根据日期进行分组,默认按月分组。

DateGroupEnum枚举的可选值:

None :     不分组
Year:      按年分组 
Quarter:   按季度分组
Month:     按月分组
Week:      按周分组
Day:       按天分组,月中的某一天。
Hour:      按小时分组
Minute:    按分钟分组
Second:    按秒分组

可以向Groups增加表达式分组列,语法为:

Groups.AddExp(Name, Expression)
Groups.AddExp(Name, Expression,Caption)

Name:       字符型,指定列名
Expression: 字符型,指定表达式。
Caption:    字符型,指定标题

在Totals集合中添加一个统计列的语法如下: 

Totals.AddDef(Name)
Totals.AddDef(Name, NewName)
Totals.AddDef(Name, NewName, NewCaption)
Totals.AddDef(Name, Aggregate)
Totals.AddDef(Name, Aggregate, NewName)
Totals.AddDef(Name, Aggregate, NewName, NewCaption)

参数说明 

Name:        字符型,指定统计列。
NewName:     字符型,用于给统计列指定一个新的名称,这个名称在统计表中显示。
NewCaption:  字符型,用于给统计列设置标题。
Aggregate:  AggregateEnum枚举型,用于指定统计类型,默认是求和。

AggregateEnum型枚举的可选值:

Average:平均值
Count:  记录数 
Max:    最大值
Min:    最小值
Sum:    累积值

可以向Totals添加表达式统计列,语法是:

Totals.AddExp(Name, Expression)
Totals.AddExp(Name, Expression, Caption)
Totals.AddExp(Name, Expression, Aggregate)
Totals.AddExp(Name, Expression, Caption, Aggregate)

Name:      字符型,指定列名
Expression:字符型,指定表达式

Caption:   字符型,指定列标题
Aggregate: AggregateEnum枚举型,用于指定统计类型,默认是求和。



此段说明中无排序参数,请问实际操作中要按统计结果排序该如何写,入按“金额”从大到小的显示统计结果。帮助我看了,没有这条


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


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2014/8/30 17:23:00 [只看该作者]

得到统计表后排序:

 

...

Tables("统计表").sort = "金额"


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


加好友 发短信
等级:三尾狐 帖子:668 积分:5053 威望:0 精华:0 注册:2011/10/22 13:37:00
金额是表达式列  发帖心情 Post By:2014/8/30 17:31:00 [只看该作者]

金额是表达式列,“数量*单价"得出,
用SORT显示出错

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


加好友 发短信
等级:三尾狐 帖子:668 积分:5053 威望:0 精华:0 注册:2011/10/22 13:37:00
  发帖心情 Post By:2014/8/30 17:32:00 [只看该作者]

SQLGroupTableBuilder  要使用表达式必须用计算得出


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/8/31 9:30:00 [只看该作者]

以下是引用utcxray在2014-8-30 17:31:00的发言:
金额是表达式列,“数量*单价"得出,
用SORT显示出错

 

不可能出错。

 

是说,你的统计表1生成以后,再Tables("统计表1").sort = "金额"


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


加好友 发短信
等级:幼狐 帖子:149 积分:1295 威望:0 精华:0 注册:2018/12/12 23:23:00
  发帖心情 Post By:2020/4/20 11:46:00 [只看该作者]

狐狸爸爸这种排序默认是升序的,如果要降序应该怎样?


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


加好友 发短信
等级:幼狐 帖子:149 积分:1295 威望:0 精华:0 注册:2018/12/12 23:23:00
  发帖心情 Post By:2020/4/20 11:46:00 [只看该作者]

狐狸爸爸这种排序默认是升序的,如果要降序应该怎样?

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


加好友 发短信
等级:超级版主 帖子:107440 积分:546479 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/20 12:04:00 [只看该作者]

以下是引用禾成在2020/4/20 11:46:00的发言:
狐狸爸爸这种排序默认是升序的,如果要降序应该怎样?

http://www.foxtable.com/webhelp/topics/0451.htm

 回到顶部