ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 重温 sum_decode

重温 sum_decode

原创 Linux操作系统 作者:fengjin821 时间:2009-08-04 16:42:15 0 删除 编辑

表里是每日销售记录,有主键(ID)、共5销售员编号(saleman)、交易状态(statue)(订购(order)、取消订购(cancel)、退货(claim)、退货取消(claim_cancel))金额(amt)以及件数(qty)

现在想求出其中三个个销售员的有效(订购-取消订购-退货+退货取消)销售金额和件数。


销售记录表:(交易状态:订购(order)-01、取消订购(cancel)-02、退货(claim)-03、退货取消(claim_cancel)-04),(saleman数字为销售员编号)


ID  交易状态 SALEman 订购数量 订购金额 取消数量 取消金额 出库数量 出库金额 退货数量 退货金额  退货取消数量  退货取消金额
0      01          2              1         248.00        0        0.00        0      0.00               0           0.00           0                   0.00
1      01              1              2         328.00        0        0.00        0      0.00               0           0.00           0                   0.00
2      01              2              1         278.00        0        0.00        0      0.00               0           0.00           0                   0.00
3      02              3              0         0.00        1        298.00        0      0.00        0           0.00           0                   0.00
4      02              1              0         0.00        1        298.00        0      0.00               0           0.00           0                   0.00
5      02              1              0         0.00        2        896.00        0      0.00               0           0.00           0                   0.00
6      03              2              0         0.00        0        0.00        0      0.00               3           298.00           0                   0.00
7      03              5              0         0.00        0        0.00        0      0.00               1           318.00           0                   0.00
8      03              3              0         0.00        0        0.00        0      0.00               4           248.00           0                   0.00
9      04              4              0         0.00        0        0.00        0      0.00               0           0.00           3                  480.00


我想一步达到其中三个销售员的有效销售业绩,表如下:
销售员1金额    销售员1件数  销售员2金额   销售员2件数   销售员3金额   销售员3件数
    21332                     23               124241            13                   1342432           123

 

select  sum(decode(saleman, 1, decode("交易状态", '01', "订购金额", '02', -"取消金额", '03', -"退货金额", '04' ,"退货金额"))) "销售员1金额",
        sum(decode(saleman, 1, decode("交易状态", '01', "订购数量", '02', -"取消数量", '03', -"退货数量", '04' ,"退货数量"))) "销售员1件数",
        sum(decode(saleman, 2, decode("交易状态", '01', "订购金额", '02', -"取消金额", '03', -"退货金额", '04' ,"退货金额"))) "销售员2金额",
        sum(decode(saleman, 2, decode("交易状态", '01', "订购数量", '02', -"取消数量", '03', -"退货数量", '04' ,"退货数量"))) "销售员2件数",
        sum(decode(saleman, 3, decode("交易状态", '01', "订购金额", '02', -"取消金额", '03', -"退货金额", '04' ,"退货金额"))) "销售员3金额",
        sum(decode(saleman, 3, decode("交易状态", '01', "订购数量", '02', -"取消数量", '03', -"退货数量", '04' ,"退货数量"))) "销售员3件数"
from sales_details;

 


 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/13165828/viewspace-611318/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-04-29

  • 博文量
    191
  • 访问量
    506759