壹佰网|ERP100 - 企业信息化知识门户

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1265|回复: 4

在程序开发时如何提高程序效率

[复制链接]
发表于 2010/8/11 11:28:23 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。如果您注册时有任何问题请联系客服QQ: 83569622  。

您需要 登录 才可以下载或查看,没有帐号?注册

x
在表的数据量大的时候, 容易出现性能问题, 我们有办法在程序开发的时候就避免这个问题吗? 比如刚开发完的一张新表, 没有数据, 如何优化呢?
发表于 2010/8/12 07:46:42 | 显示全部楼层
这是一个日积月累的问题,都是在技术开发的过程中逐步积累的。
如果数据量特别大,你可以考虑采用中间表的方式:将计算步骤分为几步,中间的数据放到表中,而不是直接用一个大SQL。

SQL的优化也是很有必要的。这个问题不是几句话可以解决的。这方面的资料也很多,我给你找了一个,你可以参考。

sql优化经验总结.ppt

339 KB, 下载次数: 20, 下载积分: 努力值 -5 点

发表于 2010/8/12 07:47:45 | 显示全部楼层
我觉得主要应该从5个方面进行调整:
1.去掉不必要的大型表的全表扫描
2.缓存小型表的全表扫描
3.检验优化索引的使用
4.检验优化的连接技术
5.尽可能减少执行计划的Cost

现在简单的举几个例子

Where子句中有“!=”将不使用索引
select account_name from test where amount != 0  (不使用)
select account_name from test where amount > 0  (使用)

Where条件中对字段增加处理函数将不使用该列的索引
select * from emp where to_char(hire_date,'yyyymmdd')='20080411' (不使用)
select * from emp where hire_date = to_char('20080411','yyyymmdd') (使用)

避免在索引列上使用IS NULL和 IS NOT NULL
select * from emp where dept_code is not null  (不使用)
select * from emp where dept_code > 0  (使用)

通配符% 的使用
select * from emp where name like '%A'  (不使用索引)
select * from emp where name like 'A%'  (使用索引)
发表于 2010/9/7 15:45:12 | 显示全部楼层
学习了····              
发表于 2010/9/14 00:04:43 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|手机版|壹佰网 ERP100 ( 京ICP备19053597号-2 )

Copyright © 2005-2012 北京海之大网络技术有限责任公司 服务器托管由互联互通
手机:13911575376
网站技术点击发送消息给对方83569622   广告&合作 点击发送消息给对方27675401   点击发送消息给对方634043306   咨询及人才点击发送消息给对方138011526

GMT+8, 2025/11/30 10:52 , Processed in 0.014386 second(s), 15 queries , File On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表