Oracle where 执行慢
2016-01-05 10:26
459 查看
select * from nic_finblog t
这句SQL需要几十毫秒;
select * from nic_finblog t where newscode=238697438
这句SQL需要19秒。
原因:newscode 为NVARCHAR2(50)类型,而sql中newscode=238697438 为long类型。由此猜想SQL机制先将newscode的值与long 238697438比较,发现无匹配时,自动再将long 238697438转换为NVARCHAR2(50)。
这句SQL需要几十毫秒;
select * from nic_finblog t where newscode=238697438
这句SQL需要19秒。
原因:newscode 为NVARCHAR2(50)类型,而sql中newscode=238697438 为long类型。由此猜想SQL机制先将newscode的值与long 238697438比较,发现无匹配时,自动再将long 238697438转换为NVARCHAR2(50)。
相关文章推荐
- java连接oracle11g数据库的驱动包下载
- oracle 自定义函数 返回一个表类型(转)
- EF(EntityFramework)使用Code First连接Oracle数据库详解
- oracle exp实例
- oracle同义词
- 【翻译自mos文章】在Oracle 11.2 GI环境中,怎么备份与恢复OLR?
- mybatis Oracle到Mysql迁移 记录
- oracle回顾复习
- 你能真正读懂Oracle SQL执行计划吗?
- oracle 11g win7 64位 的下载地址
- 关于oracle 10g creating datafile with zero offset for aix
- oracle新建表空间和用户
- **Oracle Client+PL SQL 使用配置**
- oracle获取列的备注和数据类型
- Oracle学习之sql共享以及4031解决方法
- Oracle之存储过程
- linux下oracle设置开机自启动实现方法
- 将oracle dml操作封装为类,成为一个模块
- Oracle建用户 授权 表 表空间的操作
- Oracle创建外键约束