现有表(access2002)一个:table1
  id    name  gongzi op_date     memo
  1      a     2000  2005-01-01  高工1998年评定 
  2      b     3000  2005-10-25  工程师1998年评定
  3      f     1800  2005-03-06  高工1998年评定
  4      aa    1000  2005-01-10  助工1998年评定
  5      dd    2000  2005-05-05  高工1998年评定 
  6      d     2000  2005-05-07  高工2000年评定
  6      m     3000  2005-05-07  教授2001年评定 
  其中: id自动生成,op_date字符型,长度为10
现想实现:统计出每月的月发放gongzi总额,以及当月的高工工资总额, 生成年报表:
   月份    发放笔数   发放总额  高工工资
    1        2        3000       2000
    2        0         0          0    
    3        1        1800       1800
    4        0          0         0          
    5        3        7000       4000
    。       。        。          。
    。       。        。          。
    12       3         18900       。
  
应如何实现?
请指教,谢谢!

解决方案 »

  1.   

    select month(op_date) pk ,count(*),sum(gongzi) ,b.gaogong from table1 a group by month(op_date) left outer join
    select month(op_date) pk,sum(gongzi) from table1 b where memo like '%高工%' group by month(op_date) on a.pk=b.pk大概这个思路,access的语法我不太清楚
      

  2.   

    select  cast(substring(convert(varchar(20),@day,20),1,7) as datetime) as month,count(id) as 发放笔数,sum(gongzi) as 发放工资
    from table1
    group by month
    select cast(substring(convert(varchar(20),@day,20),1,7) as datetime) as month,sum(gongzi) as 高工工资
    from table1
    where memo like '高工%'
    group by month把上两个表在联合起来 CSDN论坛浏览器:http://CoolSlob.ys168.com/
      

  3.   

    left outer join
    用它就行,把楼上的两个结合起来。
      

  4.   

    应为month一样,所以你可以用month作为连接条件,也可以用hxshaou的方法