以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [统计]条件统计代码-  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=134170)

--  作者:hcfbehero
--  发布时间:2019/4/29 1:42:00
--  [统计]条件统计代码-
甜版,我研究了下SQL统计,根据设想及例子作出如下代码,但有错误,请您帮忙看下,哪里有问题,除图外还出现过一个叫什么,至少有一个值未被指定,

Dim jsrQ As WinForm.ComboBox = e.Form.Controls("ComboBox7")

Dim b As New SQLGroupTableBuilder("统计表1","明细根表")
b.Groups.AddDef("运输审核_结算月", "结算月")
b.Groups.AddDef("生产信息_车号", "车号")
b.Totals.AddDef("运量", "砼运输_方量")
b.Totals.AddDef("运", "[运] = \'Y\'" ,AggregateEnum.Count)
b.Totals.AddDef("生产信息_类型", "[生产信息_类型] = \'砼\'" , "砼运输_车数" , AggregateEnum.Count) \'统计类型是砼的车数
b.Totals.AddDef("运量", "砼运输_方量")
b.Totals.AddDef("运输_砼运额", "砼运输_金额")
b.Totals.AddDef("运输_砼补方", "砼补方_方量")
b.Totals.AddDef("运输_砼补额", "砼补方_金额")
b.Totals.AddDef("生产信息_类型", "[生产信息_类型] = \'水\'" , "水运输_车数" , AggregateEnum.Count)\'统计类型是水的车数
b.Totals.AddDef("运输_水运额", "水运输_金额")
b.Totals.AddDef("公司补助_补运额", "运输补助")
b.Totals.AddDef("公司补助_补超额", "超时补助")
b.Totals.AddDef("公司补助_补其额", "其他费用")
b.VerticalTotal = True
b.Filter = "[运输审核_结算月] = \'" & jsrQ.text & "\' "
b.Build
MainTable = Tables("数据统计_Table5")


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


--  作者:有点甜
--  发布时间:2019/4/29 10:29:00
--  

1、比如

 

b.Totals.Addexp("运", "iif([运] = \'Y\', 1, 0)" ,AggregateEnum.Count)

 

2、表达式列,不能写在上面的代码那里

 

3、建议你还是用grouptablebuilder分别统计,然后再组合吧