Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

请老师们看看我的这个库存查询

望江婷  发表于:2011-08-14 09:33:52  
复制

请老师们看看我的这个库存查询表,数据量超过20W条的时候太慢了,有没有比这速度快的查询,能达到这个要求呢,谢谢

 

点击下载此附件

 

Top
煮茶论道 发表于:2011-08-14 09:53:20

1.进出库有20万条记录的话,公司规模肯定不小,这么大的公司老板连这个都要自己完成的话,这个老板真是高人。

2.每次查询库存都要把所有的进库和出库查询一遍速度当然快不起来了。你可以按照日期来个日结,月结,季度结。这样查询库存的话只要查询当日,当月,当季度的数据当然快的不得了了。查询出来加上上日结存,上月结存,上季度结存。

3.如果每天产生20万条记录以上,可以小时结,秒结也可以。



望江婷 发表于:2011-08-14 09:56:47
谢谢煮茶论道老师,不是每天产生20万条记录,是出库单和入库单数据总计达到20万是速度慢了下来,看看有什么解决方法吗?嘿嘿谢谢你老师

煮茶论道 发表于:2011-08-14 10:08:08
我上面说过了呀,可以做成周结,也就是每周结一次库存,库存结果作为上周库存保存,这一周的库存另外计算,周末在加上形成新的库存!这样查询库存就不要把前面的数据全部查一遍了

望江婷 发表于:2011-08-14 10:11:58
谢谢煮茶论道老师,刚刚学习,不好意思,能不能烦劳做个日结,月结,季度结例子呢

煮茶论道 发表于:2011-08-14 10:13:10
有qq吗

望江婷 发表于:2011-08-14 10:17:25

由呢443156822



望江婷 发表于:2011-08-15 12:42:05
SELECT B.物资编码, C.费用类别, C.费用明细, C.物资名称, C.型号规格, C.单位, B.总入库数, B.总入库金额, B.总出库数, B.总出库金额, B.总入库数-B.总出库数 AS 库存数, B.总入库金额-B.总出库金额 AS 库存金额
FROM [SELECT A.物资编码, Sum(A.入库数) AS 总入库数, Sum(A.入库金额) AS 总入库金额, Sum(A.出库数) AS 总出库数, Sum(A.出库金额) AS 总出库金额
FROM(SELECT 物资编码, Sum(入库数量) AS 入库数, Sum(金额) AS 入库金额, 0 AS 出库数, 0 AS 出库金额 FROM 入库单 GROUP BY 物资编码
UNION ALL SELECT 物资编码, 0, 0, Sum(出库数量), Sum(金额) FROM 出库单 GROUP BY 物资编码) AS A
GROUP BY A.物资编码]. AS B INNER JOIN 材料编码表 AS C ON B.物资编码 = C.物资编码;
请教各位老师这个代码把库存数为空值的也查询出来了,怎么修改代码不显示库存数为空值或0的数据呢,谢谢烦劳了

奇玉 发表于:2011-08-15 15:47:55
再对上边的这个查询进行一次查询,设置库存数字段条件:<>0,请看附件中查询“进出库明细表1”即排除了库存为0的记录点击下载此附件

望江婷 发表于:2011-08-15 16:01:18
谢谢奇玉老师,不用二次查询在源代码里修改代码能做到吗?谢谢

望江婷 发表于:2011-08-15 16:16:44

SELECT B.物资编码, C.费用类别, C.费用明细, C.物资名称, C.型号规格, C.单位, B.总入库数, B.总入库金额, B.总出库数, B.总出库金额, B.总入库数-B.总出库数 AS 库存数, B.总入库金额-B.总出库金额 AS 库存金额
FROM [SELECT A.物资编码, Sum(A.入库数) AS 总入库数, Sum(A.入库金额) AS 总入库金额, Sum(A.出库数) AS 总出库数, Sum(A.出库金额) AS 总出库金额
FROM(SELECT 物资编码, Sum(入库数量) AS 入库数, Sum(金额) AS 入库金额, 0 AS 出库数, 0 AS 出库金额 FROM 入库单 GROUP BY 物资编码
UNION ALL SELECT 物资编码, 0, 0, Sum(出库数量), Sum(金额) FROM 出库单 GROUP BY 物资编码) AS A
GROUP BY A.物资编码]. AS B INNER JOIN 材料编码表 AS C ON B.物资编码 = C.物资编码;

 

SELECT 进出库明细表.物资编码, 进出库明细表.费用类别, 进出库明细表.费用明细, 进出库明细表.物资名称, 进出库明细表.型号规格, 进出库明细表.单位, 进出库明细表.总入库数, 进出库明细表.总入库金额, 进出库明细表.总出库数, 进出库明细表.总出库金额, 进出库明细表.库存数, 进出库明细表.库存金额
FROM 进出库明细表
WHERE (((进出库明细表.库存数)<>0));

 

能不能把这两段代码合成一段呢?我想在Excel中也可以使用。谢谢



总记录:10篇  页次:1/1 9 1 :