索引效率分析

   

    在设计lms数据库的时候,因为所有的凭据(Identification)均是存放在saas数据库中的,lms中是没有user这张用户表的。在设计的时候,每个表均要增加标识字段(即服务提供商编号、公司编号),以便能实现同样一个平台,可以有很多公司使用。

面对如此复杂、庞大的用户群,就必须考虑查询优化,这时,在表中建立索引就显得尤其必要。

 

    通过林春的讲解,使用Power Designer设计好表的相关信息,包含主外键以及索引;使用SQL Server2005,对表Notify分别建立与取消索引,查看执行计划,分析效率。

 

1.       表设计

    

 

2.       建立索引

    

    

                

3.       添加索引列

 

 

 

当然我们也可以使用SQL语句创建索引:

Create index IX_CreateDate on [lms-Notify](

           CreateDate  asc

)

   

         删除索引:

         Drop index [lms-Notify].IX_CreateDate

 

4.       执行SQL查询:

结合实际情况,我们有可能会做这样的查询:查询某服务提供商服务的某公司的通知,按照通知创建时间降序排列:

 

SELECT [ID]

      ,[ServiceProviderID]

      ,[CompanyID]

      ,[Title]

      ,[Content]

      ,[CreatedDate]

      ,[LastUpdate]

  FROM [myOlat].[dbo].[lms-Notify]

where [ServiceProviderID]='HPM0YMXXQ53X0PO8CC05KFVOFA3UI6IW'

  and [CompanyID]='O 1QB4VRRMX90YA8ILV9G76SQ DS0 AT'

order by [CreatedDate] desc

 

5.  效率分析

1)  如果不建立索引

    

 

 

            

 

详细信息:

 

 

 

2)  建立索引后:

 

    

 

 

    通过测试分析,我们可以发现,设置合适的索引会给查询带来效率极大的改善。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值