给个建议

being21 2009-06-13 09:59:43
http://blog.csdn.net/being21/archive/2009/06/13/4265517.aspx
大小表连接 ,哈希连接,嵌套循环。
...全文
68 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
being21 2009-06-18
  • 打赏
  • 举报
回复
哈哈,看来楼上气度不错。
应该不是华赛的人,夸赞一个!
谢谢!
vc555 2009-06-14
  • 打赏
  • 举报
回复
因为lz说“使用提示 use_nl 后,并未获得和b一样的执行计划。”但是并没给出具体用use_nl时的sql,所以不知道lz是如何使用use_nl这个hint的。

所以只能判断hint用错,因为用hint是可以实现lz需求的。但是看不到用hint的sql,具体如何错法就不知道了。

我也只是针对你说hint问题进行回复,其实你收集一下表和索引的统计信息,也许不加hint,就能选择正确的执行计划了。

至于use_nl的正确用法,网上有相当多的例子。
建议关注一下这篇帖子:http://www.itpub.net/viewthread.php?tid=1169008
2楼是我给提问者的正确答案。4楼是某网友的精彩回复。
vc555 2009-06-13
  • 打赏
  • 举报
回复
没具体看你前面贴的全部内容,也没见你给出具体的执行sql。
仅针对
“这里的问题就是,如何才能把去掉where后的嵌套循环连接方法,做到自己可控制。使用提示 use_nl 后,并未获得和b一样的执行计划。”

说一句,你hint用错了。
being21 2009-06-13
  • 打赏
  • 举报
回复
楼上大可可以看一下我在说什么么!
就是建立 zz 表 的那段 SQL ,
select
````
from a
lefy join b
where b.x = '1'

a 为 小表,b为大表

分数虽然少一点,您两颗心的能力也不在乎这个了吧。
等个能稍微看一下我的问题 的 人吧。

说错了,不说原因,不是高手应该做的。

1,617

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧