日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

关于内表数据汇总的一些算法

發布時間:2023/12/20 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于内表数据汇总的一些算法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.把某個字段相同行的數值型數據字段匯總

如:

初始數據

FLD1

FLD2

FLD3

a

a

1

a

b

2

b

a

3

處理后數據

FLD1

FLD2

FLD3

a

a

3

b

a

3

其中:fld1,fld2為字符型,fld3為數值型。

?

要求:

現在我們的要求是:fld1相同的行的FLD3匯總到最前面那行(如果要匯總到最后那行,可以為itab一個字段設fld4賦值123,。。然后sort itab by fld1 descending fld4 discending.再做下面的運算)

并把多余的行刪除。

實際情況:(這是相當于FLD1是父結點,FLD2是子結點,FLD3為數值)現在的要求就是求父結點的值(為所有子結點的值之和)

假設數據已經存在內表ITAB(帶表頭)。

最簡單&效率應該也是最快的(個人認為,有更好方法的童鞋歡迎交流)

?

1 REPORT ydemo_rick_a. 2 DATA:BEGIN OF itab OCCURS 0, 3 fld1, 4 fld2, 5 fld3 TYPE i, 6 END OF itab. 7 DATA wtab LIKE itab. 8 DATA outtab LIKE TABLE OF itab WITH HEADER LINE. 9 itab-fld1 = 'a'. 10 itab-fld2 = 'a'. 11 itab-fld3 = 1. 12 APPEND itab. 13 14 itab-fld1 = 'a'. 15 itab-fld2 = 'b'. 16 itab-fld3 = 2. 17 APPEND itab. 18 19 itab-fld1 = 'b'. 20 itab-fld2 = 'a'. 21 itab-fld3 = 3. 22 APPEND itab. 23 24 LOOP AT itab. 25 WRITE: itab-fld1,itab-fld2,itab-fld3, / . 26 ENDLOOP. 27 28 ULINE. 29 30 LOOP AT itab. 31 ON CHANGE OF itab-fld1. 32 wtab = itab. 33 ELSE. 34 **MOTHOD 1 35 wtab-fld3 = itab-fld3. 36 DELETE itab. 37 COLLECT wtab INTO itab. 38 **MOTHOD 2 39 * ADD itab-fld3 TO wtab-fld3. 40 * DELETE itab. 41 * MODIFY TABLE itab FROM wtab TRANSPORTING fld3. 42 ***用MODIFY的效率應該更好(可以用transporting限制)不過數據量不大的話就看個人喜好了。 43 ENDON. 44 ENDLOOP. 45 ****下面為一種笨方法 46 *LOOP AT itab. 47 * ON CHANGE OF itab-fld1. 48 * APPEND itab TO outtab. 49 * outtab = itab. "記下匯總行 50 * ELSE. 51 * outtab-fld3 = itab-fld3. 52 * COLLECT outtab. 53 * ENDON. 54 *ENDLOOP. 55 56 LOOP AT itab. 57 WRITE: itab-fld1,itab-fld2,itab-fld3, / . 58 ENDLOOP. View Code

?

MODIFY的效率應該更好(可以用transporting限制),不過數據量不大的話就看個人喜好了。

?

?

轉載于:https://www.cnblogs.com/ruingy/p/3521031.html

總結

以上是生活随笔為你收集整理的关于内表数据汇总的一些算法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。