以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助] sql 库存查询  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=137843)

--  作者:晨曦396
--  发布时间:2019/7/17 8:38:00
--  [求助] sql 库存查询
 在sql数据库中,有三张表(表结构一样,记录的是所有产品进出库的明细),在数据库做了一张视图将三张表合并在一起,通过狐表---输入截止时间,按照产品统计数量,查询时间需要50S左右,因为这个是其他系统的数据库,而他查询库存所需要的时间只需要10s左右,请教一下,有什么方案可以优化,让查询时间降下来
--  作者:有点蓝
--  发布时间:2019/7/17 9:34:00
--  
视图sql发上来看看。

给时间列加上索引

--  作者:晨曦396
--  发布时间:2019/7/17 10:04:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:qq截图201907.png
图片点击可在新窗口打开查看
字段有点多,结构和截图一样的
--  作者:有点蓝
--  发布时间:2019/7/17 10:37:00
--  
用到like基本都是全表扫描,除非改sql逻辑。

把这个sql放到数据库里查询,看看需要多长时间。
--  作者:晨曦396
--  发布时间:2019/7/17 11:24:00
--  
放到数据里面查询只要5s
--  作者:有点蓝
--  发布时间:2019/7/17 11:46:00
--  
有多少数据?如果数据多,加载也要花时间的。如果是远程数据库,传输也也要花时间的。

通过狐表---输入截止时间,按照产品统计数量,查询时间需要50S左右  --具体做了什么操作,代码发上来看看

--  作者:晨曦396
--  发布时间:2019/7/17 11:53:00
--  
300万行的数据,就单纯的加载过来也要50,可能只能在数据库上用存储过程处理了,再把结果加载过来这样可能更快一些
--  作者:有点蓝
--  发布时间:2019/7/17 12:01:00
--  
这么多数据就算不查询,直接加载都要这个时间了。

减少数据量,或者进行后台统计