我为 SRSS 报告编写了一个查询,该报告应该从 maximo 检索项目列表。
它包括库存物品的数量,是否有收到和/或发出日期(如果有,最晚日期是什么)以及当时的单位成本。
尽管它返回了我想要的东西,但它运行得非常慢,以至于当它在报告中使用时,它似乎永远不会加载。5000 行需要 21 秒(maximo 中已经有 > 100k 个事务!)。我怎样才能退回单位成本以使其更快?它在没有单位成本行的情况下运行得很快。
询问
select top 5000 item.commoditygroup, item.itemnum, item.description, item.commodity, inventory.location, inventory.siteid,
(select sum(curbal) from invbalances where item.itemnum = invbalances.itemnum group by itemnum) CurrentBalance,
(select max(Convert(varchar(10), matrectrans.transdate, 103)) from matrectrans
where item.itemnum = matrectrans.itemnum and matrectrans.issuetype='RECEIPT') ReceivedDate,
(Select m1.unitcost from matrectrans m1
where m1.transdate = (select max(m2.transdate)from matrectrans m2 where item.itemnum = m2.itemnum and m2.issuetype='RECEIPT' and linecost <> 0)) RecievedUnitCost,
(select max(Convert(varchar(10), matusetrans.transdate, 103)) from matusetrans
where item.itemnum = matusetrans.itemnum and matusetrans.issuetype='ISSUE') IssueDate,
(Select m3.unitcost from matusetrans m3
where m3.transdate = (select max(m4.transdate)from matusetrans m4 where item.itemnum = m4.itemnum and m4.issuetype='ISSUE' and linecost <> 0)) IssuedUnitCost
from item, inventory
where item.itemnum = inventory.itemnum
谢谢