DQL:启用(return_top 10)性能影响

时间:2014-05-20 14:35:56

标签: dql documentum

我有这个查询最初导致大量超时:

select d.r_object_id 
from isc_fiche  d, dmr_con c 
where any c.parent_id = d.r_object_id 
group by d.r_object_id 
having count(*) > 2 

然而,当我将enable (return_top 10)添加到最后时,性能问题似乎已成为过去。显然(根据同事们的说法),该声明可能会提高性能。

有人可以为我澄清一下吗?

完整查询'方式'更好的表现:

select d.r_object_id 
from isc_fiche  d, dmr_con c 
where any c.parent_id = d.r_object_id 
group by d.r_object_id 
having count(*) > 2 
enable(return_top 10)

1 个答案:

答案 0 :(得分:1)

enable (return_top 10)修改执行的SQL语句,它向其添加一个限制子句,如ROWNUM <= 10 in Oracle。这取决于底层的RDBMS,所以如果你将EMC Documentum与Microsoft SQL Server一起使用,我想它不是ROWNUM <= 10

您可以在ECM Documentum的Web界面上运行DQL(如果我没记错的话,它叫做Webtop)。 DQL运行页面上有一个复选框,显示生成的SQL。您应该检查两个DQL查询之间的区别。