思路:
数据库-DataSet
DataSet内部二次统计处理-新的DataColumn
DataGrid数据绑定
就这样一个流程
代码自己琢磨一下

解决方案 »

  1.   

    先统计DataTable中的Column的值,然后再显示再Footer里面:
    int iCount = 0;
    for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
    {
     iCount += int.Parse(ds.Tables[0].Rows[i]["num"].RoString());
    }
    foreach (DataGridItem item in DataGrid1.Controls[0].Controls)
    {
      if (item.ItemType == ListItemType.Footer)
      {
        item.Cells[0].Text = iCount.ToString();
        return;
      }
    }
      

  2.   

    把DataGrid的ShowFooter设置为True。然后在程序中改变某列的FooterText属性:
    DataGrid1.Columns(0).FooterText=strSum
    DataGrid1.Columns(1).FooterText=strCount
    DataGrid1.DataBind()
    当然,strSum和strCount需要你自己算好。
      

  3.   

    select b.xymc as 学院名称, c.zymc as 专业名称,d.count1 as 已报到人数,e.count2 as 未报到人树,d.count1/e.count2 报到率
    from xsxxb a,bmb b,zyb c,
    (select xydm,zydm,count(*) as count1 from xsxxb where bdbj='y' group by xydm,zydm) d,
    (select xydm,zydm,count(*) as count2 from xsxxb where bdbj='n'group by xydm,zydm) e
    where a.xydm*=b.xydm and a.zydm*=c.zydm 
    and (a.xydm=d.xydm and a.zydm=d.zydm)
    and (a.xydm=e.xydm and a.zydm=e.zydm)
      

  4.   

    有个小错误
    select b.xymc as 学院名称, c.zymc as 专业名称,d.count1 as 已报到人数,e.count2 as 未报到人树,d.count1/e.count2 报到率
    from xsxxb a,bmb b,zyb c,
    (select xydm,zydm,count(*) as count1 from xsxxb where bdbj='y' group by xydm,zydm) d,
    (select xydm,zydm,count(*) as count2 from xsxxb where bdbj='n'group by xydm,zydm) e
    where a.xydm*=b.xydm and a.zydm*=c.zydm 
    and (a.xydm*=d.xydm and a.zydm*=d.zydm)
    and (a.xydm*=e.xydm and a.zydm*=e.zydm)
      

  5.   

    这样取出数据集邦定到datagrid,就行了!
      

  6.   

    我采用了ppp80()的语句, 不过还是有问题,就是报道率有问题,应该是比如98.23%这样的,但是出来的是 7,这个%怎么出来,还请各位在提拨一下