about me:oracle ace pro,optimistic,passionate and harmonious. focus on oracle,mysql and other database programming,peformance tuning,db design, j2ee,linux/aix,architecture tech,etc
全部博文(166)
发布时间:2023-05-08 15:41:01
rownum是oracle中的一个伪列(pseudo column),其目的就是给查询出来的结果集标注行号。可以实现查询前n行(top-n),中间几行(middle-n),最后几行(bottom-n)的功能。但是rownum又是一个很特殊的列,使用过程中,首先要弄清楚oracle rownum的原理,然后加以分析。......
发布时间:2023-05-08 15:33:16
? 对于不在同一层的,不能直接用hints来访问,比如这个例子的子查询b与a不在同一层,内部使用query block实现,诸如sel$n,del$n,upd$n,mrg$n,然后用@query_block访问,如例子中的leading(@"sel$5da710d3" "b"@"sel$2" "a"@"sel$1")......
发布时间:2023-05-08 15:26:58
优化器不是完美的,它可能因为各种原因,未走高效的执行计划。如优化器本身缺陷:子查询里有or走filter,或遇到bug等,这时候可以通过hints来控制优化器生成目标执行计划。......
发布时间:2023-05-07 21:58:51
很多时候,开发喜欢直接在sql里使用hints,这样限制了sql可能走更好的执行计划,修改起来也麻烦,还需要改sql,那么有没有什么方法能够在不改sql语句的情况下,改变带hints的sql执行计划呢,答案是有的。可以使用ignore_optim_embedded_hints配合sql profile来实现。......
发布时间:2023-05-06 16:37:49
在做sql性能优化时,有时候需要查看low_value,high_value的具体值,因为他们是raw类型,可以通过dbms_stats.convert_raw_value来获取具体值,可以用下面的函数获取:......