摘要: 查询速度慢的原因很多,常见如下几种 1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2、I/O吞吐量小,形成了瓶颈效应。 3、没有创建计算列导致查询不优化。 4、内存不足 5、网络速度慢 6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7、锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷) 8、sp_lock,sp_who,活动的用户查看,原因是读写竞争资源。 9、返回了不必要的行和列 10、查询语句不好,没有优化 可以通过如下方法来优化查询 1、把数据、日志、索引放到不同的I/O设备上,增加读取速度,以前可以将Temp... 阅读全文
posted @ 2011-12-30 17:24 诺哥的传奇 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 我们做软件开发的,大部分人都离不开跟数据库打交道,特别是erp开发的,跟数据库打交道更是频繁,存储过程动不动就是上千行,如果数据量大,人员流动大,那么我么还能保证下一段时间系统还能流畅的运行吗?我么还能保证下一个人能看懂我么的存储过程吗?那么我结合公司平时的培训和平时个人工作经验和大家分享一下,希望对大家有帮助。 要知道SQL语句,我想我们有必要知道SQL Server查询分析器怎么执行我们的SQL语句的,我们很多人会看执行计划,或者用Profiler来监视和调优查询语句或者存储过程慢的原因,但是如果我们知道查询分析器的执行逻辑顺序,下手的时候就胸有成竹,那么下手是不是有把握点呢? 一、查.. 阅读全文
posted @ 2011-12-30 17:12 诺哥的传奇 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 大家都在讨论关于数据库优化方面的东东,刚好参与开发了一个数据仓库方面的项目,以下的一点东西算是数据库优化方面的学习+实战的一些心得体会了,拿出来大家共享。欢迎批评指正阿!SQL语句: 是对数据库(数据)进行操作的惟一途径; 消耗了70%~90%的数据库资源;独立于程序设计逻辑,相对于对程序源代码的优化,对SQL语句的优化在时间成本和风险上的代价都很低; 可以有不同的写法;易学,难精通。SQL优化: 固定的SQL书写习惯,相同的查询尽量保持相同,存储过程的效率较高。 应该编写与其格式一致的语句,包括字母的大小写、标点符号、换行的位置等都要一致ORACLE优化器: 在任何可能的时候都会对表达式进行 阅读全文
posted @ 2011-12-30 17:09 诺哥的传奇 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 主要是针对那些一张订单有几条记录的信息,先前寸的EMSGold都是总的,现在想把它更新为按其礼品金币值占比分配快递费用,具体脚本如下:select ID,MAX(SEQ_NO) as MA,COUNT(ID) as Tinto #temp001from dbo.Fact_Order_Giftwhere EMSPayGold >0group by ID having COUNT(ID)>=2 --找出有多条记录的信息--#temp002主要是为了后面算最大SEQ_NO的快递费用做铺垫select ID,SUM(round(EMSPayGold*((GiftGold*GiftNum)* 阅读全文
posted @ 2011-12-30 16:37 诺哥的传奇 阅读(298) 评论(0) 推荐(0) 编辑
摘要: 商业智能的三个层次一、什么是BI?经过几年的积累,大部分中大型的企事业单位已经建立了比较完善的基础信息化系统。例如我们常说的CRM、ERP、OA等(图二pic2.jpg)。这些系统的统一特点都是:通过业务人员或者用户的操作,最终对数据库进行增加、修改、删除等操作。有一个术语:OLTP(Online Transaction Process)在线事务处理,指的就是这类系统。 OLTP的系统运行了一段时间以后,必然的结果就是:帮助企事业单位收集大量的历史数据。但是,在数据库中分散、独立存在的大量数据对于业务人员来说,只是一些无法看懂的天书,没有人会去拿放大镜分析数据库服务器硬盘上的磁轨。业务人员所需 阅读全文
posted @ 2011-12-30 09:53 诺哥的传奇 阅读(286) 评论(0) 推荐(0) 编辑