我是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表。