SQL> select decode(area_code_group,1,'合计',area_code) area_name,
  2   decode(area_code_group,0,decode(card_type_group,1,'大计',card_type),'') card_name,
  3   decode(card_type_group,0,decode(product_id_group,1,'小计',product_id),'') product_name,
  4   quantity,org_amount,amount
  5  from
  6  (
  7   select area_code,grouping(area_code) area_code_group,
  8    card_type,grouping(card_type) card_type_group,
  9    product_id,grouping(product_id) product_id_group,
10    sum(total_quantity) quantity,
11    sum(total_org_amount)/100 org_amount,
12    sum(total_amount)/100 amount
13   from tab_test
14   where prov_code = '034'
15    and substrb(stat_date,1,6) = '200605'
16    and busi_id in (2,20)
17    and card_status = 0
18   group by rollup(area_code,card_type,product_id)
19  )
20  /AREA_NAME                                CARD_NAME PRODUCT_NAME   QUANTITY ORG_AMOUNT     AMOUNT
---------------------------------------- --------- ------------ ---------- ---------- ----------
0                                        2         0126                 40       2000        800
0                                        2         0128                  2        200         80
0                                        2         小计                 42       2200        880
0                                        4         0126                211      10550       4220
0                                        4         0128                 31       3100       1240
0                                        4         小计                242      13650       5460
0                                        大计                          284      15850       6340
25                                       4         0126                 26       1300        520
25                                       4         0128                  3        300        120
25                                       4         小计                 29       1600        640
25                                       大计                           29       1600        640
510                                      2         0126                  2        100         40
510                                      2         小计                  2        100         40
510                                      3         0128                  1        100         40
510                                      3         小计                  1        100         40
510                                      4         0126                  9        450        180
510                                      4         0128                  1        100         40
510                                      4         小计                 10        550        220
510                                      大计                           13        750        300
511                                      4         0126                  2        100         40AREA_NAME                                CARD_NAME PRODUCT_NAME   QUANTITY ORG_AMOUNT     AMOUNT
---------------------------------------- --------- ------------ ---------- ---------- ----------
511                                      4         小计                  2        100         40
511                                      大计                            2        100         40
512                                      4         0126                 17        850        340
512                                      4         0128                  1        100         40
512                                      4         小计                 18        950        380
512                                      大计                           18        950        380
513                                      4         0126                 10        500        200
513                                      4         0128                  1        100         40
513                                      4         小计                 11        600        240
513                                      大计                           11        600        240
514                                      2         0126                  4        200         80
514                                      2         小计                  4        200         80
514                                      4         0126                  6        300        120
514                                      4         小计                  6        300        120
514                                      大计                           10        500        200
515                                      3         0126                  1         50         20
515                                      3         小计                  1         50         20
515                                      4         0126                  6        300        120
515                                      4         0128                  2        200         80
515                                      4         小计                  8        500        200
515                                      大计                            9        550        220
合计                                                                   416      23300       932070 rows selectedSQL> 

解决方案 »

  1.   

    做报表时用到,就是说当当前行某字段同前一行时,当前行的该字段不显示!我现在就想得到这种效果:AREA_NAME                                CARD_NAME PRODUCT_NAME   QUANTITY ORG_AMOUNT     AMOUNT
    ---------------------------------------- --------- ------------ ---------- ---------- ----------
    0                                        2         0126                 40       2000        800
                                                       0128                  2        200         80
                                                       小计                 42       2200        880
                                             4         0126                211      10550       4220
                                                       0128                 31       3100       1240
                                                       小计                242      13650       5460
                                             大计                          284      15850       6340
    25                                       4         0126                 26       1300        520
                                                       0128                  3        300        120
                                                       小计                 29       1600        640
                                             大计                           29       1600        640
    510                                      2         0126                  2        100         40
                                                       小计                  2        100         40
                                             3         0128                  1        100         40
                                                       小计                  1        100         40
                                             4         0126                  9        450        180
                                                       0128                  1        100         40
                                                       小计                 10        550        220
                                             大计                           13        750        300
    511                                      4         0126                  2        100         40
                                                       小计                  2        100         40
                                             大计                            2        100         40
    512                                      4         0126                 17        850        340
                                                       0128                  1        100         40
                                                       小计                 18        950        380
                                             大计                           18        950        380
    513                                      4         0126                 10        500        200
                                                       0128                  1        100         40
                                                       小计                 11        600        240
                                             大计                           11        600        240
    514                                      2         0126                  4        200         80
                                                       小计                  4        200         80
                                             4         0126                  6        300        120
                                                       小计                  6        300        120
                                             大计                           10        500        200
    合计                                                                   416      23300       9320
      

  2.   

    找到方法了:http://oracle.com.cn/viewthread.php?tid=4356