1

我不熟悉在 oracle 中使用提示优化器的概念,我想了解我是否正确使用提示 FULL

我有一个查询

SELECT COUNT(*) FROM MyTable
WHERE MyTable.name='RandomName' 

所以假设结果让我得到了 12345

现在,如果我想使用 FULL 提示,它应该这样写在下面吗?

SELECT /*+ FULL(e) */ count(*) 
FROM MyTable e
 WHERE MyTable.name='RandomName' 

结果也是12345正常吗?

谢谢

4

1 回答 1

2

是的,这就是向 Oracle 指定提示的方式。在这种情况下,它应该导致全表扫描(不使用name列上可能拥有的任何索引)。

结果当然是一样的。如果使用索引改变了结果,那会使它们变得毫无用处。

于 2016-11-08T00:36:42.480 回答