我试图优化以下查询。正在使用的两个子查询可以使它成为单个查询。如何优化以下查询
select fn.id,
(select top 1 s.rid from find f join status s on f.fid = s.fid
where f.fid = fn.id and f.active = 1) as rid,
(select top 1 f.gid from find f
where f.fid = fn.id and f.active = 1) as gid
from finding fn where f.tid = 'abcd'
我已经使用CWE,因为它被执行一遍又一遍每次迭代的,但我想在这里问一些DBA专家,有什么事情是可能的和最佳的解决方案进行优化,下面的查询加入子查询。任何帮助是极大的赞赏。
如果OP在'ID'列有索引,我认为它会扫描每个'ID'的所有记录以生成'Row_number' –