如何让此语句更高效?

chineseyounger 2003-10-17 06:51:36
有这样一个SQL语句:
select a.*, b.dwbh as bdwbh from
(select dwbh, dwdm, dwmc from gn_dwml
where dwdm like '100%') a,
(select wjdm, dwbh from oa_sjwjdw where wjdm='1')
b where a.dwbh=b.dwbh(+) order by a.dwdm

在gn_dwml表中符合dwdm like '100%'条件的有10-20万条,
在oa_sjwjdw表中符合wjdm='1'的只有1到2条。我这样写的话需要5-6分钟才能执行完毕。各位能否指点迷津?
谢谢!!!
...全文
28 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
beckhambobo 2003-10-17
  • 打赏
  • 举报
回复
select a.dwbh, a.dwdm, a.dwmc,b.dwbh
from gn_dwml a,oa_sjwjdw b
where a.dwbh=b.dwbh(+) and instr(a.dwdm,'100%')>0 and b.wjdm='1'
order by a.dwdm

对dwbh,wjdm建索引,必要时也可以instr(a.dwdm,'100%')做函数索引

17,081

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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