以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]修改sql语句,填充投工统计数 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=44110) |
||||
-- 作者:yyzlxc -- 发布时间:2013/12/23 14:23:00 -- [求助]修改sql语句,填充投工统计数 如何根据CaseStudy目录下的文件"多表统计.Table"的思路,修改sql语句,将“日报源表”(外表数据表)中的投工数按年月,单位,客户汇总填充到“销售工效分月汇总”表中。请各位老师指教,谢谢!! Dim sql,s As String sql = "SELECT 年月,单位,客户全称 AS 客户,SUM(销售收入) AS 销售收入,SUM(资金回笼) AS 资金回笼,0.1-0.1 As 投工,0.1-0.1 As 人均销售 FROM {xsmx} WHERE 年月 >= \'" & nc & "\' And 年月 <= \'" & ny & "\' GROUP BY 单位,年月,客户全称" Dim b As New CrossTableBuilder("销售工效分月汇总",sql) b.HGroups.AddDef("单位") b.HGroups.AddDef("客户") b.VGroups.AddDef("年月") b.Totals.AddDef("销售收入") b.Totals.AddDef("资金回笼") b.Totals.AddDef("投工") b.Totals.AddDef("人均销售") b.HorizontalTotal = True b.VerticalTotal = True b.Build()
|
||||
-- 作者:Bin -- 发布时间:2013/12/23 14:29:00 -- 你好楼主,这个并不可以这样直接填写SQL语句的 |
||||
-- 作者:Bin -- 发布时间:2013/12/23 14:36:00 -- .
|
||||
-- 作者:yyzlxc -- 发布时间:2013/12/23 14:40:00 -- 谢谢Bin老师的回复,能不能用多表统计的方法达到目的? 以下是多表统计.Table 的代码 \'用SQL语句生成临时表 Dim cmd As New SQLCommand Dim dt As DataTable cmd.C cmd.CommandText = "Select 产品名称,数量,日期 FROM {订单} INNER JOIN {产品} ON {订单}.产品ID = {产品}.产品ID" dt = cmd.ExecuteReader() \'对临时进行分组统计 Dim b As New CrossTableBuilder("统计表1",dt) b.HGroups.AddDef("产品名称") b.VGroups.AddDef("日期","{0}月") b.Totals.AddDef("数量") b.HorizontalTotal = True b.VerticalTotal = True b.Build() MainTable = Tables("统计表1") |
||||
-- 作者:Bin -- 发布时间:2013/12/23 14:43:00 -- 看我给你完成的例子,参考这个方法. |