其实这个需求还是比较简单的, 只是查询物料的库存量和成本信息, 具体sql如下。  问题在于mtl_material_transactions、mtl_transaction_accounts这两张表中的数据量超大, 导致查询需要执行很长时间。

如果可以使用mtl_onhand_quantities_detail替代mtl_material_transactions, 执行效率应该会有提升。 另外, 如果不使用mtl_transaction_accounts, 物料成本信息又该如何获取呢?

SELECT mmt1.organization_id,

mmt1.subinventory_code,

mmt1.inventory_item_id,

SUM(mmt1.primary_quantity),

mt1.cost1,

SUM(mmt1.primary_quantity) * mt1.cost1

FROM inv.mtl_material_transactions mmt1,

mtl_system_items msi,

(SELECT mt.organization_id,

mt.inventory_item_id,

decode(SUM(mt.qty),0,0,SUM(mt.amt) / SUM(mt.qty)) cost1

FROM (SELECT mmt.organization_id,

mmt.inventory_item_id,

mmt.primary_quantity qty,

0 amt

FROM inv.mtl_material_transactions mmt

WHERE mmt.costed_flag IS NULL

AND mmt.transaction_type_id <> 80

UNION ALL

SELECT mta.organization_id,

mta.inventory_item_id,

0,

mta.base_transaction_value

FROM inv.mtl_transaction_accounts mta

WHERE mta.accounting_line_type = 1

AND mta.base_transaction_value <> 0) mt

GROUP BY mt.organization_id,

mt.inventory_item_id) mt1

WHERE mmt1.organization_id = mt1.organization_id

AND mmt1.inventory_item_id = mt1.inventory_item_id

AND mmt1.transaction_type_id <> 80

AND mmt1.costed_flag IS NULL

AND mmt1.organization_id = msi.organization_id(+)

AND mmt1.inventory_item_id = msi.inventory_item_id(+)

AND mmt1.subinventory_code IS NOT NULL

GROUP BY mmt1.organization_id,

mmt1.subinventory_code,

mmt1.inventory_item_id,

mt1.cost1

HAVING SUM(mmt1.primary_quantity) <> 0;

oracle的存量,请教一个物料库存量查询的问题, 请进。相关推荐

  1. Oracle 当前用户给另一个用户授权查询指定表或视图的权,否则另一个用户提示不存在视图或表

    用DNINMSV31账户登录数据库进行如下操作: CREATE USER NORTHBOUND IDENTIFIED BY NORTHBOUND  DEFAULT TABLESPACE "T ...

  2. Oracle性能误区--MTS,RAC,分区,并行查询

    Oracle性能误区--MTS,RAC,分区,并行查询 学习一项新的东西前需要理解其目的,下面这篇文章侧面介绍了ORACLE中RAC等4个组件的优缺点,以供日后参考.下面为文章全文: 为了提高性能,我 ...

  3. oracle视图执行脚本,Sh脚本中查询Oracle v$视图时需要在$号前加转义符“\”

    DBA经常会部署一些sh脚本登陆Oracle数据库查询v$动态视图得到一些东西来实际管理自动化的目的,但在sh脚本中写ORACLE SQL语句时,如果语句查询v$视图,直接写v$XXXX是不能成功的, ...

  4. SAP License:请教一个SD和FM基金预算集成的问题

    您好!请教一个SD和FM基金预算集成的问题:)  请启阅!望能进一步探讨相关问题:)TKS 前提:1.不采用获利能力段 2.FM采用模板预算,不采用BCS预算 请问:以上前提下的SD和FM集成是否合理 ...

  5. 【Oracle】SQL字符串查找_精确查询,只要23不要234

    今日用比较优雅的方法解决了一个挺恼人的问题,特记录之. 1 背景 学生表 studeng 有字段: id, name, courseIDs 分别对应 ID,学生姓名,学生选择的课程ID串 23 |  ...

  6. oracle 11g circuits 参数,递归:在 Oracle Database 11g 第 2 版中查询层次结构数据

    开发人员:SQL 递归: 在 Oracle Database 11g 第 2 版中查询层次结构数据的快速入门 作者:Tim Hartley 2010 年 2 月发表 递归数据库处理,也称为材料清单 或 ...

  7. WMI技术介绍和应用——使用VC编写一个半同步查询WMI服务的类

    在<WMI技术介绍和应用--VC开发WMI应用的基本步骤>文中,我们介绍了VC使用WMI技术的基本框架.本节我将讲解封装和实现一个用于半同步查询WMI的类.(转载请指明出于breaksof ...

  8. mysql 查询商品列表 显示tag_javascript - MYSQL——怎么一个sql语句查询出用户和用户商品的列表啊...

    我现在都是先写一个sql查出所有用户数组,然后foreach循环这个数组拿id查他的所有商品数据,有没好点儿的方法 回复内容: 我现在都是先写一个sql查出所有用户数组,然后foreach循环这个数组 ...

  9. rowbounds分页oracle,Oracle使用MyBatis中RowBounds实现分页查询功能

    Oracle中分页查询因为存在伪列rownum,sql语句写起来较为复杂,现在介绍一种通过使用MyBatis中的RowBounds进行分页查询,非常方便. 使用MyBatis中的RowBounds进行 ...

最新文章

  1. tia v15 添加项目_西门子S7-1500plc与S7-300plcPN/IO设备通信-创建项目
  2. find 命令_Linux下查找文件:find 命令
  3. Dubbo源码解析之Zookeeper连接
  4. CSS之Background-clip属性
  5. 从数据库读写RadioButtonList选中的值
  6. 论文浅尝 - WWW2020 | 生成多跳推理问题以改善机器阅读理解能力
  7. 火狐怎么在线升级 火狐浏览器在线升级方法分享
  8. 趋势科技云安全软件_阿里达摩院发布2020十大科技趋势!量子计算、类脑计算系统崛起...
  9. mac服务器 文件无法删除文件夹,macOS 10.15.4 无法删除一个空文件夹
  10. 联合国儿童基金会投资六家区块链初创企业,目标是解决“全球性挑战”
  11. maven 打包时动态替换properties资源文件中的配置值
  12. activemq网页管理端使用_iCloud大更新,移动端网页版推出 安卓也能使用
  13. 最强光源解析,做纺织的你知道D65,CWF,TL84,U30,HOR的区别吗?
  14. 【前端】创建元素并插入到现有文档
  15. 预检请求会让服务器性能,如何避免“预检请求”?
  16. C++代码实现栈基本操作
  17. dnf服务器不维修,dnf无法修理装备
  18. qt.qpa.plugin:Cound not load the QT platform plugin “windows“ in “ “even though it was found.
  19. sqlserver 2017 windows版本下载
  20. r 语言计算欧氏距离_R语言-KNN算法

热门文章

  1. 智能音箱音效哪个好_音质好的智能音响有哪些
  2. MySQL视频学习笔记
  3. 基于Javascript的简单图片管理
  4. 芯片设计了解吗?芯片设计之前后端设计介绍
  5. linux开发板找不到sd卡 需要手动挂载 流程记录(SD卡、TF卡、U盘 )
  6. 高考英语口试计算机,重庆高考英语口试怎么考
  7. Guido 转身离去,Python 何去何从?
  8. 年报解读 | 中国农业银行开启零售转型,2018年信用卡发卡量突破一亿张
  9. 搜狗输入法皮肤中心等显示网络不给力的解决方法
  10. 办公室空调节能集中控制方案