fanybupt

日出而作,日入而息,凿井而饮,耕田而食,帝力于我何有哉?

导航

随笔分类 -  SQLServer

摘要:注意事项一个表如果建有大量索引会影响 INSERT、UPDATE、DELETE 和 MERGE 语句的性能,因为当表中的数据更改时,所有索引都须进行适当的调整。测试1:CREATE TABLE [dbo].[TEST]( [ID] char(36) not NULL, [Index] [int] NULL, [Data] [int] NULL ) DECLARE @i INT select GETDATE() SET @i=0 WHILE @i<1000000 BEGIN INSERT INTO [TEST] ([ID],[Index],[Data]) SELECT cast(NewID 阅读全文

posted @ 2012-05-04 17:59 fanybupt 阅读(412) 评论(0) 推荐(0)

摘要:1、索引扫描和表扫描索引扫描就是先查找索引,然后再读取索引对应的数据表扫描则是直接在数据页上面查找数据在查找数据占表中总数据量百分比很小的情况下,索引的优势是很大的,然而,如果需要取出表中绝大部分的数据,那索引将会消耗更多的资源简单的理解就是:如果我们只想知道某个单词的意思,那么我们使用目录找到那个单词就行了,如果我们想要顺着词典背诵单词,再通过目录那就是在犯傻了。2、聚集索引和非聚集索引聚集索引在一个表中只能建立一个,其顺序与数据库表中顺序一致非聚集索引在一个表中可以建立多个,其顺序和数据表存储顺序不一样简单的理解就是:一本词典可以按照拼音进行查找,也可以按照部首进行查找,拼音查找就扮演了聚 阅读全文

posted @ 2012-05-04 17:57 fanybupt 阅读(211) 评论(0) 推荐(0)

摘要:1、JOIN 的执行时机 select * from xm, orgselect * from xm join org on xm.xmid=org.xmid书中所说的顺序为两表会先进行笛卡尔连接,然后从连接后的虚拟表中应用过滤条件,去除不需要的行 查看执行计划发现,SQLServer并没有按照预想的方式进行执行,而是在连接的时候就进行过滤, 对于外连接,也不是在连接后再插入外部行,而是使用特殊的运算符执行外连接 重绕 select * from xm, org执行计划中包含一个运算符SPool用于优化重绕,那么重绕是指什么呢? 重绕实际上是对于需要两个输入的运算符,第一个输入在对第二个输入. 阅读全文

posted @ 2012-05-04 17:55 fanybupt 阅读(143) 评论(0) 推荐(0)