老哥们帮帮忙优化下sql语句 执行太慢了

shjdssxsyydaw 2017-05-19 08:52:46
SELECT a.vend_id AS 供应商代号,
a.vend_cname AS 供应商名称,
decode(a.vend_kind,'J','付款供应商') AS 供应商大类,
decode(a.send_type,'Q','企业法人(含友厂)','0','其他' ) AS 供应商中类,
a.mgr_factno AS 管理厂,
b.factname AS 厂别名称,
a.contacter AS 联系人,
a.vend_tel AS 联系电话,
a.vend_email AS 邮箱
FROM pec.prh092t3 a, pec.pec029t0 b
WHERE a.vend_kind = 'J'
AND a.send_type NOT IN ('P', 'G')
AND a.inval_date IS NULL
AND a.grpno = '01'
AND a.mgr_factno = b.factno
AND b.grpno = '01'
AND a.vend_id IN
(SELECT c.object_no FROM pec.acs340t0 c WHERE c.yyyymm > '201605'and c.object_no like'%I00%')
ORDER BY a.vend_id;
...全文
215 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
jdsnhan 2017-05-19
  • 打赏
  • 举报
回复
把acs340t0 表放在外层做关联查询,不以子查询的形式体现
js14982 2017-05-19
  • 打赏
  • 举报
回复
改成exists试试
shjdssxsyydaw 2017-05-19
  • 打赏
  • 举报
回复
AND a.vend_id IN (SELECT c.object_no FROM pec.acs340t0 c WHERE c.yyyymm > '201605'and c.object_no like'%I00%') 就是这句 把这句注释掉几秒就出结果了

1,617

社区成员

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

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