DB2 SQL语句的优化_DB2_数据库_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 数据库 > DB2 > DB2 SQL语句的优化

DB2 SQL语句的优化

 2013/8/9 17:20:59    程序员俱乐部  我要评论(0)
  • 摘要:DB2SQL语句相信大家都不陌生,良好的DB2SQL语句让数据库的性能更稳定。那么DB2SQL语句应该如何优化呢?下文就将带您寻找答案。应用程序对DB2数据库的操作最终表现为SQL语句对数据库的操作。良好的DB2SQL语句可以被数据库重复使用从而减少分析时间、改善一个系统的性能、对提高数据库内存区的命中率、减少I/O访问等有着非常重要的意义。在DB2数据统计和分析系统中,数据的物理位置比逻辑位置更重要,因为数据库必须查找数据,以便返回给查询用户。因此
  • 标签:SQL SQL语句 优化

DB2 SQL语句相信大家都不陌生,良好的DB2 SQL语句让数据库的性能更稳定。那么DB2 SQL语句应该如何优化呢?下文就将带您寻找答案。

应用程序对DB2数据库的操作最终表现为SQL语句对数据库的操作。良好的DB2 SQL语句可以被数据库重复使用从而减少分析时间、改善一个系统的性能、对提高数据库内存区的命中率、减少I/O访问等有着非常重要的意义

在DB2数据统计和分析系统中,数据的物理位置比逻辑位置更重要,因为数据库必须查找数据,以便返回给查询用户。因此,调整SQL的关键是如何使数据查找的路径最简化。通常可以采用下面的方法优化SQL对数据操作的表现。

(1)减少对DB2数据库的查询次数,即减少对系统资源的请求。

(2)使用临时表空间,把表的子集在临时表中进行排序,有助于避免多重排序操作。为了加速SQL查询至少应该创建一个表空间供临时段单独使用。

(3)限制动态SQL的使用,虽然动态SQL很好用,但是即使在SQL共享池中有一个完全相同的查询值,动态SQL也会重新进行语法分析。

(4)避免不带任何条件的SQL语句的执行。没有任何条件的SQL语句在执行过程中要进行全表扫描,这样的扫描往往需要很长时间,因此会大大降低检索效率。

(5)避免相关子查询一个字段的标签同时在主查询和where子句中的查询中出现,那么很可能当主查询中的字段值改变之后,子查询必须重新查询一次。查询嵌套层次越多,效率越低。因此,应当尽量避免子查询。如果子查询不可避免,那么应在子查询中过滤掉尽可能多的行。

(6)尽量使用相同的或非常类似的SQL语句进行查询,这样不仅充分利用内存中的已经分析的语法树,还能使要查询的数据在缓冲池中命中的可能性也会大大增加。

发表评论
用户名: 匿名