且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

性能优化:Sql语句中HINT不起作用

更新时间:2022-09-27 14:13:58

今天在做性能测试的时候,发现数据库的load很高,排查觉得Sql的索引有问题,但是一时找不到原因,后来经过Google发现是HINT的问题文摘如下:
在select/delete/update后写/*+ hint */ 如 select /*+ index(TABLE_NAME INDEX_NAME) */ col1... 注意/*和+之间不能有空格 如用hint指定使用某个索引 select /*+ index(cbotab) */ col1 from cbotab; select /*+ index(cbotab cbotab1) */ col1 from cbotab; select /*+ index(a cbotab1) */ col1 from cbotab a; 其中 TABLE_NAME是必须要写的,且如果在查询中使用了表的别名,在hint也要用表的别名来代替表名; INDEX_NAME可以不必写,Oracle会根据统计值选一个索引; 如果索引名或表名写错了,那这个hint就会被忽略;


本文转自elbertchen 51CTO博客,原文链接:http://blog.51cto.com/linkyou/283250,如需转载请自行联系原作者