月结算法

kisa99 2006-06-30 03:13:47
向各位请教个问题:
我现在写一个月结的存储过程A,先从库存档里(表b)读取一个物料s,再根据s获得历史表l(此表保存每次月结的数据。从而可以做为下次月结的期初库存。)中的期初库存。再计算物料s在这一个月的出入库,盘点,调拨等,最后得到的数量和当前的日期插入到表s中。
每一个物料完成这个过程要2秒,我的物料有9000个。这种算法肯定没意义。请各位指点指点。

谢谢!!!
...全文
204 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
blueonly 2006-10-06
  • 打赏
  • 举报
回复
look
LouisXIV 2006-06-30
  • 打赏
  • 举报
回复
--Try


Insert Into HistoryStorage
(
MaterialID,
HSStoreage,
[Date]
)
select
A.MaterialID,B.HSStoreage+A.MonthStorage,Getdate() as [Date]
from
(
select
MaterialID,
sum(InWareHouse-OutWareHous+Others) as MonthStorage
from
Storage
group by
MaterialID
)A
left join
(
select
MaterialID,
HSStoreage
from
HistoryStorage B
where
Datediff(month,[Date],dateadd(month,-1,getdate()))=0
)B
on
A.MaterialID=B.MaterialID
jiandanyu 2006-06-30
  • 打赏
  • 举报
回复
为什么每一个物料要分开处理,同时处理,group by 不就可以吗?
kisa99 2006-06-30
  • 打赏
  • 举报
回复
最后是插入到表l中。

34,873

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧