oracle允许为SQL中的提示创建助记符吗?我无法在Oracle文档中找到任何这样的概念,但我发现某些查询在生产中运行,并提供了如下提示:
select /*+ AHintWhichIsNotInOracleDocumentation */ from some_table;
我以为优化器会安全地忽略这一点,直到我找到D8WqOTJUA
作者谈到在"X$“表中”添加“一个名为"RICHS_SECRET_HINT”的提示?此功能在Oracle中可用吗?如果是,请链接到文档。谢谢。
编辑:为了进一步澄清,我希望找到Oracle是否提供了在新提示和Oracle提供的提示之间创建键值关系的方法。这似乎是一个毫无意义的特性,因为只有在SQL中使用了大量提示时缩短提示的长度才是好的,而这种情况很少出现。但考虑到我在工作中看到的暗示,我更想知道它们是否存在。
因此,从本质上讲,在上面的SQL中,我期望在AHintWhichIsNotInOracleDocumentation
和ORDERED
、USE_NL
等标准提示之间进行一些映射。
发布于 2014-08-17 14:05:21
您所链接的文章与创建您自己的提示无关。本文演示了,如果实际情况是性能提高只是因为先前的执行缓存了数据,那么就可以比较容易地欺骗自己,以为您已经提高了查询的性能(在本例中,通过添加一个不起任何作用的提示)。
您不能定义您自己的提示。有一些暗示是没有记录的。考虑到很少使用文档化的提示是提高查询性能的正确的长期解决方案(修复基本统计问题或创建概要/大纲/等等几乎总是有意义的),因此您不太可能使用无文档的提示。我无法想象有一种情况,能够定义你自己的暗示是有意义的。
https://stackoverflow.com/questions/25352722
复制