首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何统计select语句中某个字段在内部表中的记录数?

如何统计select语句中某个字段在内部表中的记录数?
EN

Stack Overflow用户
提问于 2011-03-08 14:06:25
回答 1查看 17.4K关注 0票数 1

我获取了一个ty_marc类型的内部表。在这个内部表格中,我取了两个字段matnr和werks_d,我想根据用户给出的条目来计算工厂生产的材料(marc-werks)的数量。

我把代码写成...

代码语言:javascript
运行
复制
if so_matnr is not initial.
select matnr werks from marc 
into table it_marc
where matnr in so_matnr.
endif.

loop at it_marc into w_marc.
write :/ w_marc-matnr. ( how to count total number of material eg:- material number : 100-100 to 100-110).
       w_marc-werks.
endloop.

我想要计算物料的总数,并将计数显示在同一内部表格的另一个字段中。注:物料编号100-100可能有10个物料,因此我希望同一内部表的另一个字段中的计数为10,100-110可以有n个记录,该字段中的计数应为n。

EN

回答 1

Stack Overflow用户

发布于 2011-03-08 14:30:47

有两个简单的选择。

如果您实际上并不关心工厂(werks),那么可以在select语句中使用group by子句和count函数。类似于:

代码语言:javascript
运行
复制
select matnr, count(*)
from marc
where matnr in so_matnr
group by matnr
into table it_marc_count.

结构it_marc_count需要在第二个位置有一个整型字段(显然在第一个位置有一个整型字段)。

如果确实需要werks,最简单的方法是按matnr对it_marc进行排序,然后在loop at循环(或类似的循环)中使用at endsum结构。Processing Table Entries in Loops结尾处的示例应该可以帮助您入门。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5228976

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档