sap的库存备件价值SQL
时间: 2023-08-21 18:33:23 浏览: 53
假设你想查询SAP系统中所有库存备件的总价值,你可以运行以下SQL语句:
```
SELECT SUM(MBEW.STPRS * MARD.LABST) AS "Total Value"
FROM MBEW
INNER JOIN MARD ON MBEW.MATNR = MARD.MATNR
WHERE MARD.LABST > 0;
```
解释一下这个SQL语句:
- MBEW表包含了SAP系统中所有物料的成本价值(STPRS)。
- MARD表包含了所有物料的实际库存数量(LABST)。
- INNER JOIN MBEW和MARD表,使用物料号(MATNR)作为关联字段。
- WHERE子句过滤掉库存数量为零的物料。
- 最后,使用SUM函数计算所有库存备件的总价值,并将结果命名为"Total Value"。
相关问题
sap的库存价值计算sql
以下是SAP的库存价值计算SQL:
```
SELECT MBEW.BWKEY, MBEW.MATNR, MARD.WERKS, SUM(MARD.LABST * MBEW.STPRS) AS "STOCK_VALUE"
FROM MARD
INNER JOIN MBEW ON MARD.MATNR = MBEW.MATNR
WHERE MARD.LABST > 0
GROUP BY MBEW.BWKEY, MBEW.MATNR, MARD.WERKS;
```
该SQL查询了SAP的MARD表和MBEW表,计算了每个物料的库存价值,其中库存数量乘以每个物料的标准价格(STPRS)。该查询还按照工厂和物料号进行了分组,以便更好地组织和分析数据。
sap的库存数量计算sql
在SAP中,库存数量计算的SQL语句可以根据不同的需求而有所不同。以下是一些用于库存数量计算的常见SQL语句:
1. 计算特定物料的当前库存数量:
```
SELECT SUM(MARD.LABST) AS CurrentStock
FROM MARD
WHERE MARD.MATNR = '物料号'
```
2. 计算特定物料在特定仓库中的当前库存数量:
```
SELECT SUM(MARD.LABST) AS CurrentStock
FROM MARD
INNER JOIN MARDH ON MARD.MATNR = MARDH.MATNR AND MARD.WERKS = MARDH.WERKS
WHERE MARD.MATNR = '物料号' AND MARD.WERKS = '仓库号'
```
3. 计算特定物料在特定仓库中的可用库存数量:
```
SELECT SUM(MARD.LABST - MARD.RESAB - MARD.SPERR) AS AvailableStock
FROM MARD
INNER JOIN MARDH ON MARD.MATNR = MARDH.MATNR AND MARD.WERKS = MARDH.WERKS
WHERE MARD.MATNR = '物料号' AND MARD.WERKS = '仓库号'
```
4. 计算特定物料在特定仓库中的已预留库存数量:
```
SELECT SUM(MARD.RESAB) AS ReservedStock
FROM MARD
INNER JOIN MARDH ON MARD.MATNR = MARDH.MATNR AND MARD.WERKS = MARDH.WERKS
WHERE MARD.MATNR = '物料号' AND MARD.WERKS = '仓库号'
```
这些SQL语句可以根据实际需求进行修改和定制。值得注意的是,这些SQL语句仅作为示例,具体实现可能会因为版本、数据结构等因素而有所不同。