sql语句查询条件的不同表达方式对查询性能的影响
今天操作数据库遇到一个问题
目标表RA_AD_DAILY_DATA的数据量大概有5千万左右,其中的BUSINESS_DATE字段为日期类型
我要查询8月20号导入的三条记录,刚开始用这种方式去查:
SELECT * FROM RA_AD_DAILY_DATA WHERE to_char(BUSINESS_DATE,'yyyy-MM-dd')= '2014-08-20' ;
速度非常慢,五分钟左右才能出来结果(在PL/SQL developer中)
同样都是查询2014年8月20日的数据,换一种表达的方式
用 SELECT * FROM RA_AD_DAILY_DATA WHERE BUSINESS_DATE= to_date('2014-08-20','yyyy-MM-dd') ;
只用了0.3秒就查询出来了
第一种方式要把所有的数据库里边的BUSINESS_DATE字段都变成字符串类型然后再进行比较,因为数据库的数据量非常大,所以是不可取的
更重要的原因是把日期转换成字符串之后,在日期之上建立的索引就失效了。。。。
sql语句查询条件的不同表达方式对查询性能的影响的更多相关文章
- FreeSql (二十七)将已写好的 SQL 语句,与实体类映射进行二次查询
有时候,我们希望将写好的 sql 语句,甚至是存储过程进行查询,虽然效率不高(有时候并不是效率至上). 巧用AsTable var sql = fsql.Select<UserX>() . ...
- sql语句之条件,分页,排序
sql语句之条件,分页,排序
- SQL Server中多表连接时驱动顺序对性能的影响
本文出处:http://www.cnblogs.com/wy123/p/7106861.html (保留出处并非什么原创作品权利,本人拙作还远远达不到,仅仅是为了链接到原文,因为后续对可能存在的一些错 ...
- SQL语句技巧_索引的优化_慢查询日志开启_root密码的破解
1.正则表达式的使用 regexp例:select name,email from t where email regexp '@163[.,]com$'使用like方式查询selct name,em ...
- SQL语句中的单引号处理以及模糊查询
为了防止程序SQL语句错误以及SQL注入,单引号必须经过处理.有2种办法: 1.使用参数,比如SELECT * FROM yourTable WHERE name = @name; 在C#中使用Sql ...
- 数据库常用SQL语句(二):多表连接查询
前面主要介绍了单表操作时的相关查询语句,接下来介绍一下多表之间的关系,这里主要是多表数据记录的查询,也就是如何在一个查询语句中显示多张表的数据,这也叫多表数据记录的连接查询. 在实现连接查询时,首先是 ...
- sql语句where条件判断是否是相同的string时 原来不判断大小写
SELECT * from api_check where api ="Worker" SELECT * from api_check where api ="worke ...
- sql语句中3表删除和3表查询
好久没来咱们博客园了,主要近期在忙一些七七八八的杂事,包括打羽毛球比赛的准备和自己在学jqgrid的迷茫.先不扯这些没用的了,希望大家能记得小弟,小弟在此谢过大家了. 回归正题:(以下的sql是本人在 ...
- SQL语句(三)分组函数和分组查询
目录 一.分组函数 特点 1. 各函数的简单使用 2. 搭配distinct的使用 3. COUNT 统计行数 4. 和分组函数一同查询的字段要求是group by后的字段 二.分组查询 1. 简单应 ...
随机推荐
- 360浏览器兼容模式 不能$.post (不是a 连接 onclick的问题!!)
最近发现一个360浏览器很蛋疼的事情,在兼容模式下 代码: <a href="#" onclick='doAudit(1)'>审核</a> 点击没有任何效果 ...
- iOS开发中的错误整理,导航控制器的导航栏取消系统渲染的错误
- ruby send respond_to
http://ruby-metaprogramming.rubylearning.com/html/ruby_metaprogramming_2.html http://galeki.is-progr ...
- 【jQueryEasyUI总结】
API: EASYUI 实例项目(重要): 社区easyui 论坛: http://bbs.jeasyuicn.com API地址:http://www.jeasyuicn.com/api SSH演示 ...
- r画饼图
原始图样: library(ggplot2) dt = data.frame(A = c(2, 7, 4, 10, 1), B = c('B','A','C','D','E')) p = ggplot ...
- 【转】淘宝技术牛p博客整理
转自:http://blog.csdn.NET/zdp072/article/details/19574793 淘宝技术委员会是由淘宝技术部高级技术人员组成的一个组织,共分为Java分会.C/C++分 ...
- 第三百二十一节,Django框架,发送邮件
第三百二十一节,Django框架,发送邮件 全局配置settings.py EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' ...
- DexClassLoader
DexClassLoader加载自己写的第三方jar包,例如金山毒霸需要加载ksremote.jar. 现在将DexClassLoader加载jar包成果分享一下. 1.新建Android工程,封 ...
- chrome调试技巧--持续更新
1.开始调试:右键审查元素 2.按钮功能: 调出控制台: 切换开发环境全屏还是嵌入: 清空当前显示: 将压缩 js 文件格式化缩进规整的文件: 3.常用页面功能: 查看.编辑(双击)HTML: 查看选 ...
- UIScrollView 的代理方法简单注解
//减速停止了时执行,手触摸时执行执行 - (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView; //只要滚动了就会触发 ...