数据库名称:SQL Server
数据库版本:2008 R2
内容/问题描述:
先前情提要一下,近期因同事业务需求,接手了一份与SQL Server连线的Excel档
但我从来没碰过SQL...(抖
因为每次开启都需要花上2分半钟以上的时间,咱老板觉得效率太差,影响工作
而且开启时,会不时与Server连动,造成程式停摆,影响日常业务
同事希望能改善此问题
开启档案时,"似乎"都在建构一个约10万笔资料的表格(含有50几个字段)
说似乎是因为我对Excel连线SQL Server的方式不是很熟悉,不太确定是否这样运作
建构完成后,使用者可以下SQL指令,接着便会从10几个资料表中去找需要的资料
(如:上半季的资料),然后组该表格
这10几个资料表有大有小,小的几10笔资料大则60几万笔。
总而言之就是从每个Sheet去捞我要的东西,然后组成一个表格这样
看了SQL写法后,发现架构满单纯的:从10几个资料表中去SELECT需要的字段且改名
如此重复50几次(有WHERE、CASE判断)
之后就把资料表一个个INNER JOIN
想请问各位大大:
1. 是否因为资料量大,造成执行速度很慢?
2. 是否SQL写法还有待调整?因为对SQL只认识了三天
不确定是否因为一连串的JOIN导致执行速度超慢
3. 还未确定是否已经设定INDEX。若有设定,还能从哪边下手来改善?
感谢各位大大耐心看完问题,新手上路请多包涵!