SELECT ProposalRkey 编号 ,ProposalUserRkey 工号,ProposalPerson 姓名,ProposalDept 部门编号,groupName 部门,ProposalTopic 提案,ProposalDate 发表时间
FROM Proposal pp
left join groups g on pp.ProposalDept = g.GroupRkey编号                工号      姓名     部门编号   提案部门       提案             奖金  提案日期
20110628055631      1000042   啥东东    10004     自营管理部 测试数据          200   2011-05-28
20110629040347      1000025   黄花菜    10002     HR          测试          200   2011-07-01
20110629041045      100002   马小小    10004     自营管理部 test          200   2011-07-01
20110629103739      1000042   啥东东    10004     自营管理部 测试一下          500   2011-07-01
20110630033919      100003   黄天天    10003     行政部 食堂饭菜太差. 200   2011-07-01
20110630043715      10006     陈醋    10004     自营管理部 宿舍价钱太贵 200   2011-07-01
20110701092115      200006   张三    10003     行政部 在郁郁葱葱 150   2011-07-02
20110701114221      1000042   杨白劳    10001     运营中心 工资永远涨不过CPI 200   2011-07-02
20110704032126      16236   成何在    10003     行政部 公司就配洗衣机. 300   2011-07-04select * from groups部门编号      部门
10001     运营中心
10002     HR
10003     行政部
10004     自营管理部
10005     国内业务拓展部怎样分别按部门,工号统计,在某一段时间内(2011-05-01---2011-07-31)统计出提案数量? 
结果一:
编码    部门        提案    奖金
10004   行政部       3      650
................结果二:
工号       姓名        提案    奖金
1000042   啥东东       2      700

解决方案 »

  1.   

    group by 部门编号group by 工号 
      

  2.   

    按个人工号查询的SQL语句如下,请问如何改进一下:
    select distinct pp.ProposalUserRkey 工号,ProposalPerson 姓名, ProposalDept 部门编号,groupName 部门,a.num 提案,a.totalAward 奖金 from Proposal pp
    left join(
              select ProposalUserRkey,count(tn.ProposalUserRkey) num ,sum(tn.ProposalAward) totalAward from Proposal tn
              group by tn.ProposalUserRkey 
             )a  on a.ProposalUserRkey = pp.ProposalUserRkey
    left join groups g on g.GroupRkey = pp.ProposalDept 
      

  3.   

    按部门查询的SQL语句如下,请问如何改进一下:
    select distinct pp.ProposalDept 编号,groupName 部门,a.num 提案,a.totalAward 奖金 from Proposal pp
    left join(
              select ProposalDept,count(tn.ProposalUserRkey) num ,sum(tn.ProposalAward) totalAward from Proposal tn
              group by tn.ProposalDept 
             )a  on a.ProposalDept = pp.ProposalDept
    left join groups g on g.GroupRkey = pp.ProposalDept 
      

  4.   

    fredrickhu思路是对,能否具体支招?
      

  5.   

    fredrickhu给的表中少个奖金,我自己设成tmoney了money型的
    按部门统计:
    select ProposalDept, groupName, count(*), sum(tmoney)
      from Proposal pp
      left join groups g
        on pp.ProposalDept = g.GroupRkey
     group by ProposalDept, groupName
    按人员统计:  
    select ProposalUserRkey,ProposalPerson, count(*),sum(tmoney) 
      from Proposal
    group by ProposalUserRkey,ProposalPerson
    很纳闷是我理解错了还是你给的很简单,这是最基础的应用