unix上的IDS 9.04。
我有一张有200000多行的表,每行有200多列。 当我在这个表上执行一个查询(假设返回470行,包含50列)时,返回需要100多秒,而dbvisualizer告诉我:
执行时间:4.87秒 获取时间:97.56秒
如果我将所有470多行导出到文件中,文件大小将小于800K
UPDATE STATISTICS已经运行,只选择了50列,没有涉及blob,如果我选择前100行,则只需要5秒返回。
Plz帮助!
答案 0 :(得分:0)
如果SELECT FIRST 100只需要几秒钟,则表明FIRST_ROWS的查询计划与ALL_ROWS的查询计划明显不同。
尝试使用SET EXPLAIN ON运行查询;有和没有FIRST n。它可能会让你知道发生了什么。
答案 1 :(得分:0)
使用:
在avoid_execute上设置解释;
YOUR_QUERY
设置解释;
并查看文件夹中的 sqexplain.out 文件。