oracle 表字段类型,与业务SQL不合理,导致的隐式转换
admin
2023-02-07 06:20:04
0

今天遇到一个生产问题,业务SQL很简单,单表查询,而且表只有三个字段,有个主键ID,而且通过主键ID过滤,业务页面会传一百多个ID过来调用SQL,这个表数据量大小为100多万,但是偏偏这条SQL执行跑了15秒,完全影响业务不能使用。

select a,b,c from t where t.id in (1111,222,333,444,555..........)

我一开始并没有去查看表设计,而是直接看了执行计划,

1 alter session set statistics_level=all;
2 执行SQL
3 select * from table(dbms_xplan.display_cursor(null,null,'ALLSTATS LAST')

执行计划直接走了全表扫描,而在谓词过滤的信息里有一堆的

to_number(t.id)=1111 or to_number(t.id)=2222 ..............

看到这里立马就猜想到了具体的问题所在,查询T表ID字段,是VARCHAR2类型,而SQL in的是数字类型,SQL直接被隐式转换后,便走不了索引了, 直接走了全表。这个问题后续才发现,也是因为业务不关注,在表数据日益上涨之后,性能问题日益凸显才被抛出来

相关内容

热门资讯

今日重磅消息“朋友安徽麻将辅助... 家人们!今天小编来为大家解答朋友安徽麻将透视挂怎么安装这个问题咨询软件客服徽4282891的挂在哪里...
玩家最新攻略“白金岛三打哈开挂... 玩家最新攻略“白金岛三打哈开挂器?”(原来真的有挂)您好,白金岛三打哈这个游戏其实有挂的,确实是有挂...
【今日要闻】“开心十三张究竟有... 【今日要闻】“开心十三张究竟有挂吗?”(太坑了原来有挂)您好,开心十三张这个游戏其实有挂的,确实是有...
我来教教您“微乐四川麻将辅助器... 您好:微乐四川麻将这款游戏可以开挂,确实是有挂的,需要了解加客服微信【4282891】很多玩家在这款...
终于明白“凉山跑得快有挂吗?”... 家人们!今天小编来为大家解答凉山跑得快透视挂怎么安装这个问题咨询软件客服徽9752949的挂在哪里买...
重磅消息“山西大唐麻将到底是不... 有 亲,根据资深记者爆料山西大唐麻将是可以开挂的,确实有挂(咨询软件无需...
今日重大通报“道游联盟炸/金/... 有 亲,根据资深记者爆料道游联盟炸/金/花是可以开挂的,确实有挂(咨询软...
最新引进“威信茶楼怎么开挂?”... 有 亲,根据资深记者爆料威信茶楼是可以开挂的,确实有挂(咨询软件无需打开...
重磅消息“乐乐四川麻将辅助器?... 有 亲,根据资深记者爆料乐乐四川麻将是可以开挂的,确实有挂(咨询软件无需...
【第一财经】“乐享牛牛有没有挂... 家人们!今天小编来为大家解答乐享牛牛透视挂怎么安装这个问题咨询软件客服徽9752949的挂在哪里买很...