谢谢昨天的帮助,但是还有些问题,先谢了。问题1:
开发环境:ado+access 
数据结构:(原始表)
代理商     产品     数量
代理商1    产品1     2
代理商2    产品1     4
代理商3    产品1     2
代理商1    产品2     4
代理商2    产品2     0
代理商3    产品3     3
。。
记录大概有3000条,希望转化为下面的结构:(目标表)
代理商   合计   产品1  产品2  产品3
合计      27      8       7       12
代理商1   9       2       4       3
代理商2   12      4       0       8
代理商3   6       2       3       1
。。问题2:
假若原始数据结构式这样
rq          产品     数量
2001-1-1    产品1     2
2001-1-3    产品1     4
2001-1-7    产品1     2
2001-1-9    产品2     4
2001-1-12    产品2     0
2001-1-13    产品3     3要求按日或者月或者年汇总数据,怎样写呢?如果rq和产品的位置换一下呢?
谢谢!

解决方案 »

  1.   

    按日SELECT format([A],"yyyy-mm-dd"), sum(IIf([B]='产品1',[c],0)) AS 产品1, sum(IIf([B]='产品2',[c],0)) AS 产品2, sum(IIf([B]='产品3',[c],0)) AS 产品3, sum([c]) AS hj
    FROM jj
    GROUP BY format([A],"yyyy-mm-dd")
    UNION ALL SELECT 'hj' as A, sum(IIf([B]='产品1',[c],0)) AS 产品1, sum(IIf([B]='产品2',[c],0)) AS 产品2, sum(IIf([B]='产品3',[c],0)) AS 产品3, sum([c]) AS hj
    FROM jj;
    按月SELECT format([A],"yyyy-mm"), sum(IIf([B]='产品1',[c],0)) AS 产品1, sum(IIf([B]='产品2',[c],0)) AS 产品2, sum(IIf([B]='产品3',[c],0)) AS 产品3, sum([c]) AS hj
    FROM jj
    GROUP BY format([A],"yyyy-mm")
    UNION ALL SELECT 'hj' as A, sum(IIf([B]='产品1',[c],0)) AS 产品1, sum(IIf([B]='产品2',[c],0)) AS 产品2, sum(IIf([B]='产品3',[c],0)) AS 产品3, sum([c]) AS hj
    FROM jj;
    着例字段对应
    A---rq          
    B---产品     
    C---数量我现在在各个版到处乱转,等不到可以发短消息!!
      

  2.   

    次序倒过来是一样的呀!!按周SELECT DATEPART("WW",[A]), sum(IIf([B]='产品1',[c],0)) AS 产品1, sum(IIf([B]='产品2',[c],0)) AS 产品2, sum(IIf([B]='产品3',[c],0)) AS 产品3, sum([c]) AS hj
    FROM jj
    GROUP BY DATEPART("WW",[A])
    UNION ALL SELECT 'hj' as A, sum(IIf([B]='产品1',[c],0)) AS 产品1, sum(IIf([B]='产品2',[c],0)) AS 产品2, sum(IIf([B]='产品3',[c],0)) AS 产品3, sum([c]) AS hj
    FROM jj;