首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

年表格汇总

2011-12-24 
年报表汇总我有一张数据表,包含IDGETTIMEweight指数1指数212007-07-24:11:201000.330.3222007-07-26:11:20

年报表汇总
我有一张数据表,包含
ID         GETTIME                 weight               指数1             指数2
1       2007-07-24:11:20     100                   0.33                 0.32
2       2007-07-26:11:20     100                   0.50                 0.32
3       2007-08-24:11:20     100                   0.33                 0.32
4       2007-08-25:11:20     100                   0.30                 0.40
我要做成一个年报表,显示为
 
  项目                   weight             指数1               指数2
7月数据                 200               0.41                   0.32
8月数据                 200               0.31                   0.36

请问该怎么做呀.
指数的计算公式为:每条记录的指数   *   该记录的weight   /   汇总记录的weight综合




[解决办法]
先把GETTIME属性按月份归档,然后再按照你的意思统计就是
先用GETTIME实例化一个DateTime对象date,然后比对这个date.Month就可以得到月份
剩下应该很好做了
[解决办法]
public void Resolver(DataSet _ds)
{
int[] months=new int[12];
foreach(DataRow dr in _ds.Tables[0].Rows)
{
DateTime MyDateTime = DateTime.Parse(dr[ "GETTIME "].ToString());//将字符串时间转换成DateTime对象
months[MyDateTime.Month]+=int.Parse(dr[ "weight "].ToString());//取得了这个月份的总重
}
}
[解决办法]
指数的计算公式为:每条记录的指数 * 该记录的weight / 汇总记录的weight综合

======

这个不理解,只有按 几何平均值 算了


SELECT DatePart(mm, MAX([GETTIME])) + '月数据 ' AS 项目, SUM(weight) AS TotalWeight, SUM(指数1*weight)/TotalWeight AS 指数1, SUM(指数2*weight)/TotalWeight AS 指数2
FROM tbl
GROUP BY DatePart(mm, [GetTime])
[解决办法]
sorry, -> 算术平均值

热点排行