我是Documentum的新手,有一个简单的问题,我正在尝试根据上次修改的内容检索所有记录。

基本上我有一个包含1000条记录的数据表。

当前我们使用

Select * from docfolder enabled (FETCH_ALL_RESULTS 1000)


上述声明的问题有时是新创建的报告或修改后的报告将超出1000范围,并且我们的用户将抱怨未找到报告*有效的抱怨*

实际上,最后修改的记录甚至不需要是列表中的第一条记录,只需要出现即可。

我尝试使用

Select * from docfolder order by r_modify_date enabled (FETCH_ALL_RESULTS 1000)


但这会花费太长时间(永远不会完成)。我尝试将*替换为a,b,c,d(字段),但它也不起作用。

我是否可以解决我的问题?

我正在考虑documentum“ ENABLE(RETURN_TOP 10)”提示,但我怀疑它是否适用于Oracle 11g,而documentum如何定义前1000名?

更新:似乎通过蟾蜍使用数据链接比使用DQL更快,但是由于遗留问题,我需要DQL解决方案。

Documentum 6.0和Oracle 11g。

最佳答案

您正在使用哪个版本的Documentum?

确保r_object_id上有索引。您可能还需要向r_modify_date添加索引。

此外,在添加字段a,b,c,d时-确保这些字段是“非重复的”。这样,Documentum无需连接_r表,从而使整体查询更快。

此外,在DA中,如果执行查询,则实际上可以看到传递给Oracle的SQL查询。进行此查询,然后在Toad中运行它,并进行优化。您也可以注册_s表,以便可以DQL直接查询_s表。

07-25 20:16