设为首页
收藏本站
最新电影
> 子栏目 Asp | Jsp | XML | XSL | Div+Css | 自定义函数 | 数据库 | 脚本特效
您现在的位置: 首页=>后台技术=>数据库 订阅本栏目  
SQL(数据库)语句的优化 之 操作符优化
时间: 2008-07-24 13:46:35 阅读次数:2510


1. IN 操作符
推荐方案:在业务密集的SQL当中尽量不采用IN操作符飞飞Asp@技术乐园
2. NOT IN操作符
推荐方案:用NOT EXISTS 或(外连接+判断为空)方案代替
3. <> 操作符(不等于)
推荐方案:用 > or < 代替
4. IS NULL 或IS NOT NULL操作(判断字段是否为空)
推荐方案:用其它相同功能的操作运算代替或
不允许字段为空,而用一个缺省值代替空值,如业扩申请中状态字段不允许为空,缺省为申请
建立位图索引(有分区的表不能建,位图索引比较难控制,如字段值太多索引会使性能下降,多人更新操作会增加数据块锁的现象)
5. > 及 < 操作符(大于或小于操作符)
推荐方案:使用条件的边界值尽量与要求条件相近,避免出现检索其他无用记录的情况
如一个表有100万记录,一个数值型字段A,30万记录的A=0,30万记录的A=1,39万记录的A=2,1万记录的A=3那么执行A>2与A>=3的效果就有很大的区别了,因为A>2时ORACLE会先找出为2的记录索引再进行比较,而A>=3时ORACLE则直接找到=3的记录索引
6. LIKE操作符
推荐方案:使用LIKE通配符查询时,不能一味的使用通配符,尽量能够将条件描述清楚,缩小查询范围,避免全表扫描
7. UNION操作符
推荐方案:用UNION ALL 代替 UNION
UNION在进行表链接后会筛选掉重复的记录,所以在表链接后会对所产生的结果集进行排序运算,删除重复的记录再返回结果实际大部分应用中是不会产生重复的记录,
UNION ALL操作只是简单的将两个结果合并后就返回


站内搜索    

下一篇Microsoft SQL Server 2005 Service Pack 3(sqlserver2005 sp3)微软官方下载地址

上一篇数据类型详解 MSSQL

本栏目最新 栏目最新列表
access由于您和其他用户试图同时改变同一数
Microsoft SQL Server 2005 Service Pack 3
MySQL时间戳转换的方法
清除,删除表中数据的方法
mysql常用时间函数用法解释
网站优化策划 栏目最新列表
增加网站外链的快速方法
网站上线前必做的30个检查
新的友情链接参考标准(没有google的PR情况
优化Google的AdSense广告的五个工具
王通讲SEO八大基础
站点最新 站点最新列表
微博推广的一些技巧
xhEditor v1.1.7 发布,
收集的一些轻量级非常实
50个新鲜兼容最新版本的
javascript中cookie的设
Excel中出现#VALUE!、#D
jquery插件:飞飞表情插件
十个使用HTML5开发的精彩
支持HTML5的浏览器有哪些
飞妮莫属:漫画:如何写出
历史最热10条信息  
MIME介绍 及 [1] [2] [3]
巧用Google和迅雷来下载
Transact SQL 常 [1] [2]
VIA Rhine II Fast Ethe
电脑常用端 [1] [2] [3]
Do you get a kick out
十道羊皮卷 欣赏+mp3版+
每日一句:A friend and
每日一句:Theres no tu
经典__悟透JavaScript
 width= 
伟哥博客 西安房产 123最新电影 三四六四