复杂的SQL数据计算问题

gongqs 2009-03-10 09:10:41
表结构如下
序号 桶号 标志 编码 材料名称 数量 单价 金额 类别
1 090301A001 1 0101 材料A 10 5 50 1
2 090301A001 1 0102 材料B 20 8 160 1
3 090301A001 1 0103 材料C 10 6 60 1
4 090301A001 2 090301A00101 混合料A 40 6.75 270 2
5 090301C002 1 0101 材料A 10 5 50 1
6 090301C002 1 090301A00101 混合料A 10 6.75 67.5 2
7 090301C002 1 0101 材料D 10 5 50 1
8 090301C002 2 090301A00101 混合料E 30 5.58333 167.5 2

标志为1表示配料,2表示配料好后入库
类别为1表示化工材料,2表示配好后的混合料
桶号是日期加班组加序号的型式来编的,编码如果是化工材料就是材料编码,如果是混合料就是配料编号.
如上面所示,用ABC三种材料组成混合料A,混合料E又由混合料A加一些化工材料组成,如果要算混合料E的价格要先算混合料A的价格,我的计算方法是先把所有的桶号找出来,再用游标进行遍历一桶一桶的算,可计算速度真的超级慢.一天下来的桶号有两三百个.我用存储过程在服务器上面计算的可计算要差不多二十分钟.而且在计算时其它电脑访问SQL服务器时超级慢.而且经常是第一次计算后发现单输错误修改后又重新计算.各位大侠们有没有什么好的方法可以改进一下.如不用游标之类,改用别的方法之类的,各位大侠们多给点意见,我服务器是至强2.8双CPU的,硬盘是两个SCSI 1W转做的RAID1 内存2G.
...全文
113 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
dawugui 2009-03-11
  • 打赏
  • 举报
回复
看不懂,帮顶.
gongqs 2009-03-11
  • 打赏
  • 举报
回复
我测试了一下,感觉游标很慢.
贴出服务器配置是想说硬件应该不会很慢.
我想要的结果就是怎样能使计算速度快一些.表结构就跟上面的一样.各位大侠能不能做一个速度较快的过程给我参照一下.
seawalt 2009-03-11
  • 打赏
  • 举报
回复
看不懂,我想问题不复杂,你写得太复杂了。
qqhmitzk 2009-03-10
  • 打赏
  • 举报
回复
几百个数据要二十几分钟,机器配置有那么拽,可见是程序的问题
贴出你的存储过程看看
ws_hgo 2009-03-10
  • 打赏
  • 举报
回复
看的好烦
你就说要什么结果
you_tube 2009-03-10
  • 打赏
  • 举报
回复
貌似跟 这个 服务器是至强2.8双CPU的,硬盘是两个SCSI 1W转做的RAID1 内存2G.扯不上关系吧
ws_hgo 2009-03-10
  • 打赏
  • 举报
回复
先看下
htl258_Tony 2009-03-10
  • 打赏
  • 举报
回复
好多文字
快乐_石头 2009-03-10
  • 打赏
  • 举报
回复
先看看 好多文字
先帮顶~~~~~~~

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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