以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  如何使用SQLGroupTableBuilder的表达式统计列统计符合条件的记录数量  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=122737)

--  作者:wangj6666
--  发布时间:2018/8/1 10:56:00
--  如何使用SQLGroupTableBuilder的表达式统计列统计符合条件的记录数量
如何使用SQLGroupTableBuilder的表达式统计列统计符合条件的记录行数?
实例如下:我的样品订单中有一列叫”交期差异“,我要使用SQLGroupTableBuilder的表达式统计列方法统计”交期差异“为正数的行数,以及”交期差异“为0或负数的行数,我写了下面的代码,但计算结果不正确。请专家指正!谢谢!
Dim b As New SQLGroupTableBuilder("打样准时交付率","样品订单")
b.C
b.Groups.AddDef("量革日期", DateGroupEnum.Year, "年")
b.Groups.AddDef("量革日期", "月")
b.Groups.AddDef("负责工程师")
b.Totals.Addexp("交期超期", "交期差异>0",AggregateEnum.Count)
b.Totals.Addexp("交期合格", "交期差异<=0",AggregateEnum.Count)
b.Build()

--  作者:有点甜
--  发布时间:2018/8/1 10:58:00
--  

如果是access数据库

 

b.Totals.Addexp("交期超期", "iif(交期差异>0, 1, 0)")

b.Totals.Addexp("交期合格", "iif(交期差异<=0, 1, 0)")

 

如果是sql server数据库,改成 case when end


--  作者:wangj6666
--  发布时间:2018/8/1 13:08:00
--  
OK,搞定。谢谢!