本文主要是介绍WITH AS and materialize hints .,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
WITH AS: 就是将一个子查询部分独立出来,有时候是为了提高SQL语句的可读性,有时候是为了提高SQL语句性能。
如果一个SQL语句中,某个表会被访问多次,而且每次访问的限制条件一样的话,就可以使用with as来提高性能。
注意:如果 with as 短语没有被调用2次以上,CBO就不会讲这个短语获取的数据放入temp表,如果想要讲数据放入temp表需要使用materialize hint
如果 with as 短语被调用了2次以上,CBO会自动将 with as 短语的数据放入一个临时表,这个时候不用写materialize hint
充分证明 :
1.当with as 语句没有被调用2次以上时,如果表需要访问多次,那么需要加hints /+ materialize /
2.如果with as 语句被调用2次以上时,自动会将 with as 短语的数据放入一个临时表,这个时候不用写materialize hint
这篇关于WITH AS and materialize hints .的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!