Foxtable(狐表)用户栏目专家坐堂 → [讨论] Sql 库存统计的2种方法,你更看中哪种?


  共有16307人关注过本帖树形打印复制链接

主题:[讨论] Sql 库存统计的2种方法,你更看中哪种?

帅哥哟,离线,有人找我吗?
小猪鑫鑫
  11楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:832 积分:5867 威望:0 精华:6 注册:2011/5/27 11:41:00
  发帖心情 Post By:2012/12/21 19:30:00 [只看该作者]

楼主:您提的两种方法在我的系统中的不同模块中都有使用,第二种使用在五金件的出入库及库存统计中,库存表实际上就是物料编码表,每次进出都在后台修改这张物料编码表中的入库数与出库数,这样的方法基本不耗库存表的统计时间,因为是在每次出入库保存时就完成了库存数据的更新,但有三个制约条件,1、物料编码完全唯一(这个对有的工厂有点难,比如说我们厂的地毯,同一个产品,不同的包装形式都需要单独统计库存数时,就不适合这种方式,因为我们不能给所有的包装形式都编一个唯一的编码,那样就太多编码了);2、出入库明细最好不准删除数据,或删除修改数据必须有特定的程序操作,否则库存数有可能出错;3、需要有单独的保存键来实现出入库明细的数据入到库存表中,否则如果操作者使用了系统的保存键的话,就会导致库存数出错了;

对于第一种方式:我就用在成品的库存表中,因为除了统计产品外,还要统计该产品的一些不同的属性,如我前面所说的包装方式等,这种方式用第一种方法较好,但代码要求较高,否则速度会比较慢的


 回到顶部
帅哥哟,离线,有人找我吗?
yinyb36
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:953 积分:7252 威望:0 精华:0 注册:2011/9/6 13:36:00
  发帖心情 Post By:2012/12/21 21:24:00 [只看该作者]

库存表和订单明细表关联,用表达式列

 回到顶部
帅哥哟,离线,有人找我吗?
qq121454970
  13楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:880 积分:9005 威望:0 精华:3 注册:2012/4/22 18:06:00
  发帖心情 Post By:2012/12/22 7:23:00 [只看该作者]

表达式不可能得,100万数据,不可能全部加载进去得……其实在100万行里筛选指定一款商品(2个条件的情况下),统计也只要1~2秒,跟明细量而定。

 回到顶部
帅哥哟,离线,有人找我吗?
qq121454970
  14楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:880 积分:9005 威望:0 精华:3 注册:2012/4/22 18:06:00
  发帖心情 Post By:2012/12/22 7:25:00 [只看该作者]

这里不方便上电脑,等下上网的时候我吧文件上传上来,大家帮我提点意见哈

 回到顶部
帅哥哟,离线,有人找我吗?
qq121454970
  15楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:880 积分:9005 威望:0 精华:3 注册:2012/4/22 18:06:00
  发帖心情 Post By:2012/12/27 15:58:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:数量更新.part01.rar

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:数量更新.part02.rar

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:数量更新.part03.rar


 回到顶部
帅哥哟,离线,有人找我吗?
qq121454970
  16楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:880 积分:9005 威望:0 精华:3 注册:2012/4/22 18:06:00
  发帖心情 Post By:2012/12/27 15:59:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:数量更新.part04.rar

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:数量更新.part05.rar

上传个文件真不容易啊图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
qq121454970
  17楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:880 积分:9005 威望:0 精华:3 注册:2012/4/22 18:06:00
  发帖心情 Post By:2012/12/27 15:59:00 [只看该作者]

麻烦给兄弟测试下速度哈图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/12/27 16:01:00 [只看该作者]

以下是引用qq121454970在2012-12-27 15:59:00的发言:
麻烦给兄弟测试下速度哈图片点击可在新窗口打开查看


其实你可以使用 百度网盘 或者 金山快盘的。

 回到顶部
帅哥哟,离线,有人找我吗?
qq121454970
  19楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:880 积分:9005 威望:0 精华:3 注册:2012/4/22 18:06:00
  发帖心情 Post By:2012/12/27 16:06:00 [只看该作者]

本来是用够快网盘的,不知道是IE浏览器问题还是网盘问题,不设置密码下载失败,设置密码又看不到密码框,再加上我那个时候电脑没网络了,汗。。。图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  20楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/12/27 16:16:00 [只看该作者]

如果代码改成这样的话,查询一行大概一两秒。

If e.DataCol.Name = "商品编号" Then
    Dim ck As String = "'"& e.DataRow("仓库") & "'"
    Dim sp As String = "'" & e.DataRow("商品编号") & "'"
    If ck <> "" AndAlso sp <> "" Then
        Dim cmd,cmd1,cmd2 As new SQLCommand
        cmd.C
        cmd.CommandText = "Select sum(进货数) as 进货, sum(出货数) as 出货, sum(调整数) as 调整 from {明细} where 仓库 = " & ck & " And 商品编号 = " & sp
        Dim dt As DataTable = cmd.ExecuteReader
        e.DataRow("进货数") = dt.DataRows(0)("进货")
        e.DataRow("出货数") = dt.DataRows(0)("出货")
        e.DataRow("调整数") = dt.DataRows(0)("调整")
    End If
End If

 回到顶部
总数 23 上一页 1 2 3 下一页