select 表一.项目编号,表一.项目名称,count(表二.项目编号) as 参与人数 from 表一, 表二 where 表一.项目编号=表二.项目编号 group by 表一.项目编号,表一.项目名称
--至于那个页脚的合计,不是SQL处理的了,delphi里面应该有这样的控件的(本身的datagrid好像没有这个功能),建议到delphi板块去问问.

解决方案 »

  1.   

    各们老大,我要做一个web应用,用ASP.NET做
      

  2.   

    select 表一.项目编号,表一.项目名称,count(表二.项目编号) as 参与人数 
    from 表一, 表二 
    where 表一.项目编号=表二.项目编号 
    group by 表一.项目编号,表一.项目名称
    union all
    select  (select count(*) from 表一)
            ,(select count(distinct(人员名称)) from 表二)
            ,(select count(distinct(人员名称)) from 表二)/(select count(*) from 表一)
      

  3.   

    select a.项目编号,
           项目名称=(select 表一.项目名称 from 表一 where 表一.项目编号=a.项目编号),
           a.YS,a.pro_sum,a.ys_sum,vag=a.ys_sum/a.pro_sum   
     from 
      (
       select base.项目编号,base.YS,
              pro_sum=(select count(表一.项目编号) from 表一),
              ys_sum=(select sum(表二.人数) from 表二)
         from
          (
           select 表一.项目编号,sum(表二.人数) as YS
             from 表一
             left join 表二
             on 表一.项目编号=表二.项目编号
           group by 表一.项目编号
          ) as base
      ) as a