开发中应注意一些的SQL写法.ppt_第1页
开发中应注意一些的SQL写法.ppt_第2页
开发中应注意一些的SQL写法.ppt_第3页
开发中应注意一些的SQL写法.ppt_第4页
开发中应注意一些的SQL写法.ppt_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

开发中应注意一些的SQL写法 2010 12 一 操作符二 SQL书写的影响三 其它情况 一 操作符 IN与EXISTS操作符在业务密集的SQL当中尽量不采用IN操作符 NOTIN最好是不要使用 用EXISTS和NOTEXISTS方案代替UNION与UNIONALL操作符UNION在进行表链接后会筛选掉重复的记录 UNIONALL操作只是简单的将两个结果合并后就返回大于 小于 不等于操作符 和 和0改a 0ora 0 LIKE操作符LIKE操作符如果用得不好则会产生性能上的问题 如LIKE 张 这种查询不会引用索引 而LIKE 张 则会引用范围索引少用 应按需要多少取多少的原则 少用 Or操作符用了or语句 数据库优化器无法优化 大表查询进可以考虑将or改成UNIONALLhaving操作符需要使用having时 尽可能先用where过虑掉不需要的数据后使用 二 SQL书写的影响 同一功能同一性能不同书写SQL的影响以利用SGA共享池 防止相同的Sql语句被多次分析WHERE后面的条件顺序影响一般建议那些可以过滤掉最大数量记录的条件写在WHERE子句的末尾 书写条件列时避免改变列的类型例如 A例为数值型 下面两种写法都可以得到结果A 123或是A 123 但第一种效率优于第二种 因为oracle需对第二种写法进行类型转换使用表的别名当在SQL语句中连接多个表时 请使用表的别名并把别名前缀于每个Column上 这样一来 就可以减少解析的时间并减少那些由Column歧义引起的语法错误 三 其它情况 条件字段不进行函数处理或是计算操作条件字段尽量不进行函数处理或是计算操作 特别是索引列 因为进行函数处理后索引将会不起作用用索引提高效率尽量使用索引列做为查询条件 避免在索引列上使用NOT通常 还在在索引条件列中也不要使用 字符连接函数 就象其他函数那样 也会停用了索引 ISNULL ISNOTNULL操作判断字段是否为空一般是不会应用索引的 因为索引是不索引空值的 尽量多使用COMMIT只要有可能 在程序中尽量多使用COMMIT 这样程序的性能得到提高 需求也会因为COMMIT所释放的资源而减少减少数据库的访问使用decode函数可以避免重复扫描相同记录或重复连接相同的表 例如 selectcount sum sal fromempwheredept no 0020andenamelike smith selectcount sum sal fromempwheredept no 0030andenamelike smith 可以用decode函数高效地得到相同结果selectcount decode dept no 0020 x null d0020 count count decode dept no 0030 x null d0030 count sum decode dept no 0020 sal null d0020 sal sum decode dept no 0030 sal null d0030 salfromempwhereenamelike smith 以上列举的是在开发过

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论