在MS SQL Server 2005中使用视图时出现缩放问题。我定义的视图返回小测试数据集中感兴趣的数据;但是,当我尝试在大型数据集(> 10000行)上返回视图时,我的查询只运行并运行而不返回。这是视图定义效率的错误,还是我需要包含索引?还有其他方法可以使视图更快/更有效地返回数据,以便实际使用它吗?
我目前的观点定义如下: -
CREATE VIEW reportedProjects AS
SELECT vc.projectID, vc.sampleID, vc.runID, vc.ngsSubpanel,
va.[HGVS_c], va.[HGVS_p], va.geneID, va.transcriptID,
sc.score, sc.scorer, sc.checker
FROM dbo.varCall vc, dbo.varAnnotation va, dbo.varScore sc
WHERE vc.varCallID = va.varCallID
AND vc.variantID = va.variantID
AND va.variantID = sc.variantID
AND va.transcriptID = sc.transcriptID;
GO
- 更新 -
对于任何可能为读者抛出的红色鲱鱼道歉。更改基表列(在上面的问题描述中未列出)以在视图中加入已解决了我的问题。提供的所有建议都非常受欢迎。
答案 0 :(得分:0)
为varCallID,variantID和transcriptID添加索引;然后使用连接并查看它的执行方式